diff --git a/Gemfile.lock b/Gemfile.lock index 9c4815da0..48dd4892d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -29,8 +29,8 @@ GEM parser (~> 3.2.0) rainbow (>= 2.0, < 4.0) regexp_parser (2.8.2) - rexml (3.2.8) - strscan (>= 3.0.9) + rexml (3.3.6) + strscan rubocop (1.57.2) json (~> 2.3) language_server-protocol (>= 3.17.0) diff --git a/go.mod b/go.mod index a3a45968f..ce2700b0a 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/go-openapi/loads v0.22.0 github.com/go-openapi/spec v0.21.0 github.com/go-xmlfmt/xmlfmt v1.1.2 - github.com/guptarohit/asciigraph v0.7.1 + github.com/guptarohit/asciigraph v0.7.2 github.com/nbio/st v0.0.0-20140626010706-e9e8d9816f32 github.com/opentracing/opentracing-go v1.2.0 github.com/peterbourgon/diskv v2.0.1+incompatible diff --git a/go.sum b/go.sum index d29ec252e..5658706f5 100644 --- a/go.sum +++ b/go.sum @@ -86,8 +86,8 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= -github.com/guptarohit/asciigraph v0.7.1 h1:K+JWbRc04XEfv8BSZgNuvhCmpbvX4+9NYd/UxXVnAuk= -github.com/guptarohit/asciigraph v0.7.1/go.mod h1:dYl5wwK4gNsnFf9Zp+l06rFiDZ5YtXM6x7SRWZ3KGag= +github.com/guptarohit/asciigraph v0.7.2 h1:pBBJYbMl4j7zS4AwmrfAs6tA0VQOEQC933aG72dlrFA= +github.com/guptarohit/asciigraph v0.7.2/go.mod h1:dYl5wwK4gNsnFf9Zp+l06rFiDZ5YtXM6x7SRWZ3KGag= github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542 h1:2VTzZjLZBgl62/EtslCrtky5vbi9dd7HrQPQIx6wqiw= github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542/go.mod h1:Ow0tF8D4Kplbc8s8sSb3V2oUCygFHVp8gC3Dn6U4MNI= github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f h1:7LYC+Yfkj3CTRcShK0KOL/w6iTiKyqqBA9a41Wnggw8= diff --git a/internal/pkg/expanders/swagger-armspecs.generated.go b/internal/pkg/expanders/swagger-armspecs.generated.go index d35092c6d..de2db323e 100644 --- a/internal/pkg/expanders/swagger-armspecs.generated.go +++ b/internal/pkg/expanders/swagger-armspecs.generated.go @@ -2022,14 +2022,253 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }}, }}, }, + { + Display: "accessReviewScheduleDefinitions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "instances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{id}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "contactedReviewers", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/contactedReviewers", "2021-12-01-preview"), + }, + { + Display: "decisions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{decisionId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions/{decisionId}", "2021-12-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions/{decisionId}", "2021-12-01-preview"), + }}, + }}, + }}, + }}, + }, + { + Display: "operations", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/operations", "2021-12-01-preview"), + }, + { + Display: "providerOperations", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/providerOperations", "2022-04-01"), + SubResources: []swagger.ResourceType{ + { + Display: "{resourceProviderNamespace}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Authorization/providerOperations/{resourceProviderNamespace}", "2022-04-01"), + }}, + }, + { + Display: "accessReviewHistoryDefinitions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{historyDefinitionId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}", "2021-12-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "instances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}/instances", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{}, + }}, + }}, + }, + { + Display: "accessReviewScheduleDefinitions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{scheduleDefinitionId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}", "2021-12-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "instances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{id}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "contactedReviewers", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/contactedReviewers", "2021-12-01-preview"), + }, + { + Display: "decisions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions", "2021-12-01-preview"), + }}, + }}, + }}, + }}, + }, + { + Display: "default", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleSettings/default", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleSettings/default", "2021-12-01-preview"), + }, + { + Display: "classicAdministrators", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/classicAdministrators", "2015-07-01"), + }, + { + Display: "denyAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/denyAssignments", "2022-04-01"), + }, + { + Display: "roleAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments", "2022-04-01"), + }, + { + Display: "denyAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/denyAssignments", "2022-04-01"), + }, + { + Display: "roleAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments", "2022-04-01"), + }, + { + Display: "roleAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments", "2022-04-01"), + }, { Display: "permissions", Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions", "2022-05-01-preview"), }, + { + Display: "denyAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/denyAssignments", "2022-04-01"), + }, { Display: "permissions", Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions", "2022-05-01-preview"), }, + { + Display: "{denyAssignmentId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{denyAssignmentId}", "2022-04-01"), + }, + { + Display: "{roleAssignmentId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{roleAssignmentId}", "2022-04-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{roleAssignmentId}", "2022-04-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{roleAssignmentId}", "2022-04-01"), + }, + { + Display: "accessReviewHistoryDefinitions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{historyDefinitionId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}", "2021-12-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "instances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}/instances", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{}, + }}, + }}, + }, + { + Display: "accessReviewScheduleDefinitions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{scheduleDefinitionId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}", "2021-12-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "instances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances", "2021-12-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{id}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}", "2021-12-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "contactedReviewers", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/contactedReviewers", "2021-12-01-preview"), + }, + { + Display: "decisions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions", "2021-12-01-preview"), + }}, + }}, + }}, + }}, + }, + { + Display: "default", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleSettings/default", "2021-12-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/accessReviewScheduleSettings/default", "2021-12-01-preview"), + }, + { + Display: "denyAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/denyAssignments", "2022-04-01"), + SubResources: []swagger.ResourceType{ + { + Display: "{denyAssignmentId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/denyAssignments/{denyAssignmentId}", "2022-04-01"), + }}, + }, + { + Display: "eligibleChildResources", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/eligibleChildResources", "2024-02-01-preview"), + }, + { + Display: "roleAssignmentScheduleInstances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleInstances", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleAssignmentScheduleInstanceName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleInstances/{roleAssignmentScheduleInstanceName}", "2024-02-01-preview"), + }}, + }, + { + Display: "roleAssignmentScheduleRequests", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleAssignmentScheduleRequestName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests/{roleAssignmentScheduleRequestName}", "2024-02-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests/{roleAssignmentScheduleRequestName}", "2024-02-01-preview"), + Children: []swagger.ResourceType{}, + }}, + }, + { + Display: "roleAssignmentSchedules", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentSchedules", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleAssignmentScheduleName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignmentSchedules/{roleAssignmentScheduleName}", "2024-02-01-preview"), + }}, + }, + { + Display: "roleAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignments", "2022-04-01"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleAssignmentName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}", "2022-04-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}", "2022-04-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}", "2022-04-01"), + }}, + }, { Display: "roleDefinitions", Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleDefinitions", "2022-05-01-preview"), @@ -2041,6 +2280,102 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}", "2022-05-01-preview"), }}, }, + { + Display: "roleEligibilityScheduleInstances", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleInstances", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleEligibilityScheduleInstanceName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleInstances/{roleEligibilityScheduleInstanceName}", "2024-02-01-preview"), + }}, + }, + { + Display: "roleEligibilityScheduleRequests", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleEligibilityScheduleRequestName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests/{roleEligibilityScheduleRequestName}", "2024-02-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests/{roleEligibilityScheduleRequestName}", "2024-02-01-preview"), + Children: []swagger.ResourceType{}, + }}, + }, + { + Display: "roleEligibilitySchedules", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilitySchedules", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleEligibilityScheduleName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleEligibilitySchedules/{roleEligibilityScheduleName}", "2024-02-01-preview"), + }}, + }, + { + Display: "roleManagementAlertConfigurations", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlertConfigurations", "2022-08-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{alertId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlertConfigurations/{alertId}", "2022-08-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlertConfigurations/{alertId}", "2022-08-01-preview"), + }}, + }, + { + Display: "roleManagementAlertDefinitions", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlertDefinitions", "2022-08-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{alertDefinitionId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlertDefinitions/{alertDefinitionId}", "2022-08-01-preview"), + }}, + }, + { + Display: "{operationId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlertOperations/{operationId}", "2022-08-01-preview"), + }, + { + Display: "roleManagementAlerts", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlerts", "2022-08-01-preview"), + Children: []swagger.ResourceType{}, + SubResources: []swagger.ResourceType{ + { + Display: "{alertId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}", "2022-08-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}", "2022-08-01-preview"), + Children: []swagger.ResourceType{ + { + Display: "alertIncidents", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}/alertIncidents", "2022-08-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{alertIncidentId}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}/alertIncidents/{alertIncidentId}", "2022-08-01-preview"), + Children: []swagger.ResourceType{}, + }}, + }}, + }}, + }, + { + Display: "roleManagementPolicies", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicies", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleManagementPolicyName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicies/{roleManagementPolicyName}", "2024-02-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicies/{roleManagementPolicyName}", "2024-02-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicies/{roleManagementPolicyName}", "2024-02-01-preview"), + }}, + }, + { + Display: "roleManagementPolicyAssignments", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicyAssignments", "2024-02-01-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{roleManagementPolicyAssignmentName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicyAssignments/{roleManagementPolicyAssignmentName}", "2024-02-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicyAssignments/{roleManagementPolicyAssignmentName}", "2024-02-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Authorization/roleManagementPolicyAssignments/{roleManagementPolicyAssignmentName}", "2024-02-01-preview"), + }}, + }, { Display: "bestPractices", Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Automanage/bestPractices", "2022-05-04"), @@ -2839,55 +3174,51 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Batch/operations", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Batch/operations", "2024-07-01"), }, { Display: "batchAccounts", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/batchAccounts", "2024-02-01"), - }, - { - Display: "cloudServiceSkus", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/cloudServiceSkus", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/batchAccounts", "2024-07-01"), }, { Display: "quotas", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/quotas", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/quotas", "2024-07-01"), }, { Display: "virtualMachineSkus", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/virtualMachineSkus", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/virtualMachineSkus", "2024-07-01"), }, { Display: "batchAccounts", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{accountName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-02-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-02-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-02-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "applications", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{applicationName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-02-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-02-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-02-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "versions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{versionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", "2024-02-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", "2024-02-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", "2024-07-01"), Children: []swagger.ResourceType{}, }}, }}, @@ -2895,61 +3226,71 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "certificates", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{certificateName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-02-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-02-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-02-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", "2024-07-01"), Children: []swagger.ResourceType{}, }}, }, { Display: "detectors", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/detectors", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/detectors", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{detectorId}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/detectors/{detectorId}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/detectors/{detectorId}", "2024-07-01"), + }}, + }, + { + Display: "networkSecurityPerimeterConfigurations", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/networkSecurityPerimeterConfigurations", "2024-07-01"), + SubResources: []swagger.ResourceType{ + { + Display: "{networkSecurityPerimeterConfigurationName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}", "2024-07-01"), + Children: []swagger.ResourceType{}, }}, }, { Display: "outboundNetworkDependenciesEndpoints", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/outboundNetworkDependenciesEndpoints", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/outboundNetworkDependenciesEndpoints", "2024-07-01"), }, { Display: "pools", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{poolName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-02-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-02-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-02-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", "2024-07-01"), Children: []swagger.ResourceType{}, }}, }, { Display: "privateEndpointConnections", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{privateEndpointConnectionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-02-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-02-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-01"), }}, }, { Display: "privateLinkResources", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{privateLinkResourceName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources/{privateLinkResourceName}", "2024-02-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources/{privateLinkResourceName}", "2024-07-01"), }}, }}, }}, @@ -3604,15 +3945,15 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Compute/operations", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Compute/operations", "2024-07-01"), }, { Display: "availabilitySets", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets", "2024-07-01"), }, { Display: "capacityReservationGroups", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/capacityReservationGroups", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/capacityReservationGroups", "2024-07-01"), }, { Display: "cloudServices", @@ -3636,11 +3977,11 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "hostGroups", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups", "2024-07-01"), }, { Display: "images", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images", "2024-07-01"), }, { Display: "cloudServiceOsFamilies", @@ -3686,23 +4027,23 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "publishers", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "offers", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "skus", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "versions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{version}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}", "2024-07-01"), }}, }}, }}, @@ -3710,41 +4051,41 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "vmimages", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/vmimages", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/vmimages", "2024-07-01"), }, { Display: "publishers", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "types", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "versions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{version}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}", "2024-07-01"), }}, }}, }, { Display: "offers", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "skus", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "versions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{version}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}", "2024-07-01"), }}, }}, }}, @@ -3752,11 +4093,11 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "runCommands", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{commandId}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}", "2024-07-01"), }}, }, { @@ -3790,27 +4131,27 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "usages", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages", "2024-07-01"), }, { Display: "virtualMachineScaleSets", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachineScaleSets", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachineScaleSets", "2024-07-01"), }, { Display: "virtualMachines", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines", "2024-07-01"), }, { Display: "vmSizes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes", "2024-07-01"), }, { Display: "proximityPlacementGroups", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups", "2024-07-01"), }, { Display: "restorePointCollections", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/restorePointCollections", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/restorePointCollections", "2024-07-01"), }, { Display: "skus", @@ -3822,54 +4163,54 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "sshPublicKeys", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sshPublicKeys", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sshPublicKeys", "2024-07-01"), }, { Display: "virtualMachineScaleSets", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets", "2024-07-01"), }, { Display: "virtualMachines", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines", "2024-07-01"), }, { Display: "availabilitySets", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{availabilitySetName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "vmSizes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes", "2024-07-01"), }}, }}, }, { Display: "capacityReservationGroups", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{capacityReservationGroupName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "capacityReservations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{capacityReservationName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}", "2024-07-01"), }}, }}, }}, @@ -4079,29 +4420,29 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "hostGroups", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{hostGroupName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "hosts", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{hostName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "hostSizes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}/hostSizes", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}/hostSizes", "2024-07-01"), }}, }}, }}, @@ -4109,44 +4450,44 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "images", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{imageName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}", "2024-07-01"), }}, }, { Display: "proximityPlacementGroups", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{proximityPlacementGroupName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}", "2024-07-01"), }}, }, { Display: "restorePointCollections", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{restorePointCollectionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{restorePointName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}", "2024-07-01"), }, { Display: "diskRestorePoints", @@ -4175,92 +4516,92 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "sshPublicKeys", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{sshPublicKeyName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}", "2024-07-01"), Children: []swagger.ResourceType{}, }}, }, { Display: "virtualMachineScaleSets", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{vmScaleSetName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "extensions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{vmssExtensionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}", "2024-07-01"), }}, }, { Display: "instanceView", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView", "2024-07-01"), }, { Display: "osUpgradeHistory", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory", "2024-07-01"), }, { Display: "latest", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest", "2024-07-01"), }, { Display: "skus", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus", "2024-07-01"), }, { Display: "virtualMachines", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{instanceId}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "extensions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{vmExtensionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}", "2024-07-01"), }}, }, { Display: "instanceView", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/instanceView", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/instanceView", "2024-07-01"), }, { Display: "runCommands", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{runCommandName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}", "2024-07-01"), }}, }}, }, @@ -4303,46 +4644,46 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "virtualMachines", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{vmName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "extensions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{vmExtensionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}", "2024-07-01"), }}, }, { Display: "instanceView", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView", "2024-07-01"), }, { Display: "runCommands", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{runCommandName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-03-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-03-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-03-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}", "2024-07-01"), }}, }, { Display: "vmSizes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes", "2024-03-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes", "2024-07-01"), }, { Display: "guestConfigurationAssignments", @@ -4369,126 +4710,126 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.ComputeSchedule/operations", "2024-06-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.ComputeSchedule/operations", "2024-08-15-preview"), }, { Display: "balances", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances", "2024-08-01"), }, { Display: "balanceSummary", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary", "2024-08-01"), }, { Display: "events", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events", "2024-08-01"), }, { Display: "lots", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots", "2024-08-01"), }, { Display: "reservationTransactions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/reservationTransactions", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/reservationTransactions", "2024-08-01"), }, { Display: "lots", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}/providers/Microsoft.Consumption/lots", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}/providers/Microsoft.Consumption/lots", "2024-08-01"), }, { Display: "balances", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances", "2024-08-01"), }, { Display: "events", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/events", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/events", "2024-08-01"), }, { Display: "lots", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/lots", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/lots", "2024-08-01"), }, { Display: "reservationTransactions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions", "2024-08-01"), }, { Display: "reservationDetails", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationDetails", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationDetails", "2024-08-01"), }, { Display: "reservationSummaries", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries", "2024-08-01"), }, { Display: "reservationDetails", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationDetails", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationDetails", "2024-08-01"), }, { Display: "reservationSummaries", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationSummaries", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationSummaries", "2024-08-01"), }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Consumption/operations", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Consumption/operations", "2024-08-01"), }, { Display: "aggregatedCost", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/aggregatedCost", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/aggregatedCost", "2024-08-01"), }, { Display: "aggregatedcost", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Consumption/aggregatedcost", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Consumption/aggregatedcost", "2024-08-01"), }, { Display: "default", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default", "2024-08-01"), }, { Display: "default", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/pricesheets/default", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/pricesheets/default", "2024-08-01"), }, { Display: "reservationDetails", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationDetails", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationDetails", "2024-08-01"), }, { Display: "reservationRecommendationDetails", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendationDetails", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendationDetails", "2024-08-01"), }, { Display: "reservationRecommendations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendations", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendations", "2024-08-01"), }, { Display: "reservationSummaries", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationSummaries", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{resourceScope}/providers/Microsoft.Consumption/reservationSummaries", "2024-08-01"), }, { Display: "budgets", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets", "2024-08-01"), SubResources: []swagger.ResourceType{ { Display: "{budgetName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}", "2023-11-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}", "2023-11-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}", "2024-08-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}", "2024-08-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}", "2024-08-01"), }}, }, { Display: "charges", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/charges", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/charges", "2024-08-01"), }, { Display: "marketplaces", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/marketplaces", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/marketplaces", "2024-08-01"), }, { Display: "tags", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/tags", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/tags", "2024-08-01"), }, { Display: "usageDetails", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/usageDetails", "2023-11-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/{scope}/providers/Microsoft.Consumption/usageDetails", "2024-08-01"), }, { Display: "operations", @@ -4767,7 +5108,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.DocumentDB/operations", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.DocumentDB/operations", "2024-07-01"), }, { Display: "cassandraClusters", @@ -8579,22 +8920,59 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.HardwareSecurityModules/operations", "2018-10-31-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.HardwareSecurityModules/operations", "2021-11-30"), + }, + { + Display: "cloudHsmClusters", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters", "2023-12-10-preview"), }, { Display: "dedicatedHSMs", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs", "2018-10-31-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs", "2021-11-30"), + }, + { + Display: "cloudHsmClusters", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters", "2023-12-10-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{cloudHsmClusterName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}", "2023-12-10-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}", "2023-12-10-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}", "2023-12-10-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}", "2023-12-10-preview"), + Children: []swagger.ResourceType{ + { + Display: "privateEndpointConnections", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateEndpointConnections", "2023-12-10-preview"), + SubResources: []swagger.ResourceType{ + { + Display: "{peConnectionName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateEndpointConnections/{peConnectionName}", "2023-12-10-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateEndpointConnections/{peConnectionName}", "2023-12-10-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateEndpointConnections/{peConnectionName}", "2023-12-10-preview"), + }}, + }, + { + Display: "privateLinkResources", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateLinkResources", "2023-12-10-preview"), + }}, + }}, }, { Display: "dedicatedHSMs", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs", "2018-10-31-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs", "2021-11-30"), SubResources: []swagger.ResourceType{ { Display: "{name}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2018-10-31-preview"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2018-10-31-preview"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2018-10-31-preview"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2018-10-31-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2021-11-30"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2021-11-30"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2021-11-30"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}", "2021-11-30"), + Children: []swagger.ResourceType{ + { + Display: "outboundNetworkDependenciesEndpoints", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}/outboundNetworkDependenciesEndpoints", "2021-11-30"), + }}, }}, }, { @@ -8801,91 +9179,129 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.HybridCompute/operations", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.HybridCompute/operations", "2024-07-10"), + }, + { + Display: "licenses", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/licenses", "2024-07-10"), }, { Display: "{privateLinkScopeId}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/privateLinkScopes/{privateLinkScopeId}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/privateLinkScopes/{privateLinkScopeId}", "2024-07-10"), }, { Display: "versions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions", "2024-07-10"), SubResources: []swagger.ResourceType{ { Display: "{version}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions/{version}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions/{version}", "2024-07-10"), }}, }, { Display: "machines", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines", "2024-07-10"), }, { Display: "privateLinkScopes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/privateLinkScopes", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/privateLinkScopes", "2024-07-10"), + }, + { + Display: "licenses", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses", "2024-07-10"), + SubResources: []swagger.ResourceType{ + { + Display: "{licenseName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses/{licenseName}", "2024-07-10"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses/{licenseName}", "2024-07-10"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses/{licenseName}", "2024-07-10"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses/{licenseName}", "2024-07-10"), + }}, }, { Display: "machines", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines", "2024-07-10"), SubResources: []swagger.ResourceType{ { Display: "{machineName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2022-12-27"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2022-12-27"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2022-12-27"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2024-07-10"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2024-07-10"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2024-07-10"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}", "2024-07-10"), Children: []swagger.ResourceType{ { Display: "extensions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions", "2024-07-10"), SubResources: []swagger.ResourceType{ { Display: "{extensionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2022-12-27"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2022-12-27"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2022-12-27"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2024-07-10"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2024-07-10"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2024-07-10"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}", "2024-07-10"), + }}, + }, + { + Display: "licenseProfiles", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles", "2024-07-10"), + SubResources: []swagger.ResourceType{ + { + Display: "{licenseProfileName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles/{licenseProfileName}", "2024-07-10"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles/{licenseProfileName}", "2024-07-10"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles/{licenseProfileName}", "2024-07-10"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles/{licenseProfileName}", "2024-07-10"), }}, }, { Display: "networkProfile", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/networkProfile", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/networkProfile", "2024-07-10"), }, { Display: "current", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/privateLinkScopes/current", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/privateLinkScopes/current", "2024-07-10"), }}, }}, }, { Display: "privateLinkScopes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes", "2024-07-10"), SubResources: []swagger.ResourceType{ { Display: "{scopeName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2022-12-27"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2022-12-27"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2022-12-27"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2024-07-10"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2024-07-10"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2024-07-10"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}", "2024-07-10"), Children: []swagger.ResourceType{ + { + Display: "networkSecurityPerimeterConfigurations", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/networkSecurityPerimeterConfigurations", "2024-07-10"), + SubResources: []swagger.ResourceType{ + { + Display: "{perimeterName}", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/networkSecurityPerimeterConfigurations/{perimeterName}", "2024-07-10"), + Children: []swagger.ResourceType{}, + }}, + }, { Display: "privateEndpointConnections", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections", "2024-07-10"), SubResources: []swagger.ResourceType{ { Display: "{privateEndpointConnectionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}", "2022-12-27"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}", "2022-12-27"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-10"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-10"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-10"), }}, }, { Display: "privateLinkResources", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources", "2024-07-10"), SubResources: []swagger.ResourceType{ { Display: "{groupName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}", "2022-12-27"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}", "2024-07-10"), }}, }}, }}, @@ -12047,44 +12463,48 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "mongoClusters", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/mongoClusters", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/mongoClusters", "2024-07-01"), }, { Display: "mongoClusters", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{mongoClusterName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-03-01-preview"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-03-01-preview"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-03-01-preview"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-07-01"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", "2024-07-01"), Children: []swagger.ResourceType{ { Display: "firewallRules", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{firewallRuleName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", "2024-03-01-preview"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", "2024-03-01-preview"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", "2024-07-01"), }}, }, { Display: "privateEndpointConnections", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections", "2024-07-01"), SubResources: []swagger.ResourceType{ { Display: "{privateEndpointConnectionName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-03-01-preview"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-03-01-preview"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-01"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-01"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}", "2024-07-01"), }}, }, { Display: "privateLinkResources", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateLinkResources", "2024-03-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateLinkResources", "2024-07-01"), + }, + { + Display: "replicas", + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/replicas", "2024-07-01"), }}, }}, }, @@ -15804,10 +16224,6 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { Display: "apiCollections", Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/apiCollections", "2023-11-15"), }, - { - Display: "applicationWhitelistings", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/applicationWhitelistings", "2020-01-01"), - }, { Display: "applications", Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications", "2022-07-01-preview"), @@ -15932,13 +16348,6 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { Display: "topologies", Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies", "2020-01-01"), }}, - SubResources: []swagger.ResourceType{ - { - Display: "{groupName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}", "2020-01-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}", "2020-01-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}", "2020-01-01"), - }}, }}, }, { @@ -16103,7 +16512,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "managedClusters", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/managedClusters", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/managedClusters", "2024-06-01-preview"), }, { Display: "applications", @@ -16139,7 +16548,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "managedInstances", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Sql/managedInstances", "2022-08-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.Sql/managedInstances", "2023-05-01-preview"), }, { Display: "servers", @@ -16765,16 +17174,6 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }}, }}, }, - { - Display: "adaptiveNetworkHardenings", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings", "2020-01-01"), - SubResources: []swagger.ResourceType{ - { - Display: "{adaptiveNetworkHardeningResourceName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}", "2020-01-01"), - SubResources: []swagger.ResourceType{}, - }}, - }, { Display: "serverVulnerabilityAssessments", Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments", "2020-01-01"), @@ -17582,64 +17981,64 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "managedClusterVersions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{clusterVersion}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions/{clusterVersion}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions/{clusterVersion}", "2024-06-01-preview"), }}, }, { Display: "{operationId}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterOperationResults/{operationId}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterOperationResults/{operationId}", "2024-06-01-preview"), }, { Display: "{operationId}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterOperations/{operationId}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterOperations/{operationId}", "2024-06-01-preview"), }, { Display: "managedClusterVersions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{clusterVersion}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions/{clusterVersion}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions/{clusterVersion}", "2024-06-01-preview"), }}, }, { Display: "managedUnsupportedVMSizes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedUnsupportedVMSizes", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedUnsupportedVMSizes", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{vmSize}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedUnsupportedVMSizes/{vmSize}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedUnsupportedVMSizes/{vmSize}", "2024-06-01-preview"), }}, }, { Display: "managedClusters", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{clusterName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-04-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-04-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-04-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-06-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-06-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-06-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}", "2024-06-01-preview"), Children: []swagger.ResourceType{ { Display: "nodeTypes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{nodeTypeName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-04-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-04-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-04-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-06-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-06-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-06-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}", "2024-06-01-preview"), Children: []swagger.ResourceType{ { Display: "skus", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}/skus", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedClusters/{clusterName}/nodeTypes/{nodeTypeName}/skus", "2024-06-01-preview"), }}, }}, }}, @@ -17648,50 +18047,50 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "applicationTypes", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{applicationTypeName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-04-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-04-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-04-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-06-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-06-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-06-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}", "2024-06-01-preview"), Children: []swagger.ResourceType{ { Display: "versions", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{version}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-04-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-04-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-04-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-06-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-06-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-06-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}", "2024-06-01-preview"), }}, }}, }}, }, { Display: "applications", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{applicationName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-04-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-04-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-04-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-06-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-06-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-06-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}", "2024-06-01-preview"), Children: []swagger.ResourceType{ { Display: "services", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services", "2024-06-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{serviceName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-04-01"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-04-01"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-04-01"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-06-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-06-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-06-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}/services/{serviceName}", "2024-06-01-preview"), }}, }}, }}, @@ -17971,7 +18370,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { Children: []swagger.ResourceType{ { Display: "managedInstances", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/instancePools/{instancePoolName}/managedInstances", "2022-08-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/instancePools/{instancePoolName}/managedInstances", "2023-05-01-preview"), }, { Display: "usages", @@ -18050,14 +18449,14 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "managedInstances", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances", "2022-08-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances", "2023-05-01-preview"), SubResources: []swagger.ResourceType{ { Display: "{managedInstanceName}", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2022-08-01-preview"), - DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2022-08-01-preview"), - PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2022-08-01-preview"), - PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2022-08-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2023-05-01-preview"), + DeleteEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2023-05-01-preview"), + PatchEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2023-05-01-preview"), + PutEndpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}", "2023-05-01-preview"), Children: []swagger.ResourceType{ { Display: "administrators", @@ -18345,7 +18744,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "outboundNetworkDependenciesEndpoints", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/outboundNetworkDependenciesEndpoints", "2022-08-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/outboundNetworkDependenciesEndpoints", "2023-05-01-preview"), }, { Display: "privateEndpointConnections", @@ -18450,7 +18849,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "topqueries", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/topqueries", "2022-08-01-preview"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/topqueries", "2023-05-01-preview"), }, { Display: "vulnerabilityAssessments", @@ -22902,7 +23301,7 @@ func (e *SwaggerAPISetARMResources) loadResourceTypes() []swagger.ResourceType { }, { Display: "operations", - Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.ServiceFabric/operations", "2024-04-01"), + Endpoint: endpoints.MustGetEndpointInfoFromURL("/providers/Microsoft.ServiceFabric/operations", "2024-06-01-preview"), }, { Display: "operations", diff --git a/swagger-specs/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json b/swagger-specs/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json index 4865bb161..b4ab33219 100644 --- a/swagger-specs/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json +++ b/swagger-specs/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json @@ -4799,13 +4799,14 @@ "type": "object", "description": "Request object to update `code_interpreted` tool resources.", "properties": { - "fileIds": { + "file_ids": { "type": "array", "description": "A list of file IDs to override the current list of the assistant.", "maxItems": 20, "items": { "type": "string" - } + }, + "x-ms-client-name": "fileIds" } } }, diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2021-12-01-preview/authorization-AccessReviewCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2021-12-01-preview/authorization-AccessReviewCalls.json new file mode 100644 index 000000000..ebdd703c8 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2021-12-01-preview/authorization-AccessReviewCalls.json @@ -0,0 +1,3871 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-12-01-preview", + "title": "AuthorizationManagementClient", + "description": "Access reviews service provides the workflow for running access reviews on different kind of resources." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Authorization/operations": { + "get": { + "operationId": "Operations_List", + "x-ms-examples": {}, + "description": "Lists the operations available from this provider.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions": { + "get": { + "tags": [ + "GetAccessReviewHistoryDefinitions" + ], + "operationId": "AccessReviewHistoryDefinitions_List", + "x-ms-examples": {}, + "description": "Lists the accessReviewHistoryDefinitions available from this provider, definition instances are only available for 30 days after creation.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsHistoryFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinitionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}": { + "get": { + "tags": [ + "GetAccessReviewHistoryDefinition" + ], + "operationId": "AccessReviewHistoryDefinitions_GetById", + "x-ms-examples": {}, + "description": "Get access review history definition by definition Id", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "AccessReviewHistoryDefinition", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewHistoryDefinition" + ], + "operationId": "AccessReviewHistoryDefinition_Create", + "x-ms-examples": {}, + "description": "Create a scheduled or one-time Access Review History Definition", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinitionProperties" + }, + "description": "Access review history definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "AccessReviewHistoryDefinition", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "delete": { + "tags": [ + "DeleteAccessReviewHistoryDefinition" + ], + "operationId": "AccessReviewHistoryDefinition_DeleteById", + "x-ms-examples": {}, + "description": "Delete an access review history definition", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully" + }, + "204": { + "description": "Request is well formed but the resource does not exist" + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}/instances/{instanceId}/generateDownloadUri": { + "post": { + "tags": [ + "PostAccessReviewHistoryDefinitionInstance" + ], + "operationId": "AccessReviewHistoryDefinitionInstance_GenerateDownloadUri", + "x-ms-examples": {}, + "description": "Generates a uri which can be used to retrieve review history data. This URI has a TTL of 1 day and can be retrieved by fetching the accessReviewHistoryDefinition object.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition instance to generate a URI for." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "AccessReviewHistoryInstance", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}/instances": { + "get": { + "tags": [ + "GetAccessReviewHistoryDefinitionInstances" + ], + "operationId": "AccessReviewHistoryDefinitionInstances_List", + "x-ms-examples": {}, + "description": "Get access review history definition instances by definition Id", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinitionInstanceListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions": { + "get": { + "tags": [ + "GetAccessReviewScheduleDefinitions" + ], + "operationId": "AccessReviewScheduleDefinitions_List", + "x-ms-examples": {}, + "description": "Get access review schedule definitions", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinitionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}": { + "get": { + "tags": [ + "GetAccessReviewScheduleDefinition" + ], + "operationId": "AccessReviewScheduleDefinitions_GetById", + "x-ms-examples": {}, + "description": "Get single access review definition", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "delete": { + "tags": [ + "DeleteAccessReviewScheduleDefinition" + ], + "operationId": "AccessReviewScheduleDefinitions_DeleteById", + "x-ms-examples": {}, + "description": "Delete access review schedule definition", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully" + }, + "204": { + "description": "Request is well formed but the resource does not exist" + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewScheduleDefinition" + ], + "operationId": "AccessReviewScheduleDefinitions_CreateOrUpdateById", + "x-ms-examples": {}, + "description": "Create or Update access review schedule definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinitionProperties" + }, + "description": "Access review schedule definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful update", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/stop": { + "post": { + "tags": [ + "AccessReviewScheduleDefinitionStop" + ], + "operationId": "AccessReviewScheduleDefinitions_Stop", + "x-ms-examples": {}, + "description": "Stop access review definition", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances": { + "get": { + "tags": [ + "GetAccessReviewInstances" + ], + "operationId": "AccessReviewInstances_List", + "x-ms-examples": {}, + "description": "Get access review instances", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewInstanceListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}": { + "get": { + "tags": [ + "GetAccessReviewInstance" + ], + "operationId": "AccessReviewInstances_GetById", + "x-ms-examples": {}, + "description": "Get access review instances", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewInstance" + ], + "operationId": "AccessReviewInstances_Create", + "x-ms-examples": {}, + "description": "Update access review instance.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewInstanceProperties" + }, + "description": "Access review instance properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful update", + "schema": { + "$ref": "#/definitions/AccessReviewInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/stop": { + "post": { + "tags": [ + "AccessReviewInstanceStop" + ], + "operationId": "AccessReviewInstance_Stop", + "x-ms-examples": {}, + "description": "An action to stop an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/resetDecisions": { + "post": { + "tags": [ + "AccessReviewInstanceResetDecisions" + ], + "operationId": "AccessReviewInstance_ResetDecisions", + "x-ms-examples": {}, + "description": "An action to reset all decisions for an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/applyDecisions": { + "post": { + "tags": [ + "AccessReviewInstanceApplyDecisions" + ], + "operationId": "AccessReviewInstance_ApplyDecisions", + "x-ms-examples": {}, + "description": "An action to apply all decisions for an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/sendReminders": { + "post": { + "tags": [ + "AccessReviewInstanceSendReminders" + ], + "operationId": "AccessReviewInstance_SendReminders", + "x-ms-examples": {}, + "description": "An action to send reminders for an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions": { + "get": { + "tags": [ + "GetAccessReviewInstanceDecisions" + ], + "operationId": "AccessReviewInstanceDecisions_List", + "x-ms-examples": {}, + "description": "Get access review instance decisions", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDecisionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/contactedReviewers": { + "get": { + "tags": [ + "GetAccessReviewInstanceContactedReviewers" + ], + "operationId": "AccessReviewInstanceContactedReviewers_List", + "x-ms-examples": {}, + "description": "Get access review instance contacted reviewers", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewContactedReviewerListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/accessReviewScheduleSettings/default": { + "get": { + "tags": [ + "GetAccessReviewDefaultSettings" + ], + "operationId": "AccessReviewDefaultSettings_Get", + "x-ms-examples": {}, + "description": "Get access review default settings for the subscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDefaultSettings" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewDefaultSettings" + ], + "operationId": "AccessReviewDefaultSettings_Put", + "x-ms-examples": {}, + "description": "Get access review default settings for the subscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewScheduleSettings" + }, + "description": "Access review schedule settings." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDefaultSettings" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions": { + "get": { + "tags": [ + "GetAccessReviewHistoryDefinitions" + ], + "operationId": "ScopeAccessReviewHistoryDefinitions_List", + "x-ms-examples": { + "GetAccessReviewHistoryDefinitions": { + "$ref": "./examples/GetAccessReviewHistoryDefinitions.json" + } + }, + "description": "Lists the accessReviewHistoryDefinitions available from this provider, definition instances are only available for 30 days after creation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsHistoryFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinitionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}": { + "get": { + "tags": [ + "GetAccessReviewHistoryDefinition" + ], + "operationId": "ScopeAccessReviewHistoryDefinitions_GetById", + "x-ms-examples": { + "GetAccessReviewHistoryDefinition": { + "$ref": "./examples/GetAccessReviewHistoryDefinition.json" + } + }, + "description": "Get access review history definition by definition Id", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "AccessReviewHistoryDefinition", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewHistoryDefinition" + ], + "operationId": "ScopeAccessReviewHistoryDefinition_Create", + "x-ms-examples": { + "PutAccessReviewHistoryDefinition": { + "$ref": "./examples/PutAccessReviewHistoryDefinition.json" + } + }, + "description": "Create a scheduled or one-time Access Review History Definition", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinitionProperties" + }, + "description": "Access review history definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "AccessReviewHistoryDefinition", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "delete": { + "tags": [ + "DeleteAccessReviewHistoryDefinition" + ], + "operationId": "ScopeAccessReviewHistoryDefinition_DeleteById", + "x-ms-examples": { + "DeleteAccessReview": { + "$ref": "./examples/DeleteAccessReviewHistoryDefinition.json" + } + }, + "description": "Delete an access review history definition", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully" + }, + "204": { + "description": "Request is well formed but the resource does not exist" + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}/instances/{instanceId}/generateDownloadUri": { + "post": { + "tags": [ + "PostAccessReviewHistoryDefinitionInstance" + ], + "operationId": "ScopeAccessReviewHistoryDefinitionInstance_GenerateDownloadUri", + "x-ms-examples": { + "PostAccessReviewHistoryDefinitionInstance": { + "$ref": "./examples/PostAccessReviewHistoryDefinitionInstance.json" + } + }, + "description": "Generates a uri which can be used to retrieve review history data. This URI has a TTL of 1 day and can be retrieved by fetching the accessReviewHistoryDefinition object.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition instance to generate a URI for." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "AccessReviewHistoryInstance", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewHistoryDefinitions/{historyDefinitionId}/instances": { + "get": { + "tags": [ + "ScopeGetAccessReviewHistoryDefinitionInstances" + ], + "operationId": "ScopeAccessReviewHistoryDefinitionInstances_List", + "x-ms-examples": { + "GetAccessReviewHistoryDefinitionInstances": { + "$ref": "./examples/GetAccessReviewHistoryDefinitionInstances.json" + } + }, + "description": "Get access review history definition instances by definition Id", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "historyDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review history definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewHistoryDefinitionInstanceListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions": { + "get": { + "tags": [ + "GetAccessReviewScheduleDefinitions" + ], + "operationId": "ScopeAccessReviewScheduleDefinitions_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewScheduleDefinitions.json" + } + }, + "description": "Get access review schedule definitions", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinitionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}": { + "get": { + "tags": [ + "GetAccessReviewScheduleDefinition" + ], + "operationId": "ScopeAccessReviewScheduleDefinitions_GetById", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/GetAccessReviewScheduleDefinition.json" + } + }, + "description": "Get single access review definition", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "delete": { + "tags": [ + "DeleteAccessReviewScheduleDefinition" + ], + "operationId": "ScopeAccessReviewScheduleDefinitions_DeleteById", + "x-ms-examples": { + "DeleteAccessReview": { + "$ref": "./examples/DeleteAccessReviewScheduleDefinition.json" + } + }, + "description": "Delete access review schedule definition", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request is well formed but the resource does not exist" + }, + "200": { + "description": "Resource deleted successfully" + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewScheduleDefinition" + ], + "operationId": "ScopeAccessReviewScheduleDefinitions_CreateOrUpdateById", + "x-ms-examples": { + "PutAccessReview": { + "$ref": "./examples/PutAccessReviewScheduleDefinition.json" + } + }, + "description": "Create or Update access review schedule definition.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinitionProperties" + }, + "description": "Access review schedule definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful update", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinition" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/stop": { + "post": { + "tags": [ + "AccessReviewScheduleDefinitionStop" + ], + "operationId": "ScopeAccessReviewScheduleDefinitions_Stop", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/StopAccessReviewScheduleDefinition.json" + } + }, + "description": "Stop access review definition", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances": { + "get": { + "tags": [ + "GetAccessReviewInstances" + ], + "operationId": "ScopeAccessReviewInstances_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstances.json" + } + }, + "description": "Get access review instances", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewInstanceListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}": { + "get": { + "tags": [ + "GetAccessReviewInstance" + ], + "operationId": "ScopeAccessReviewInstances_GetById", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstance.json" + } + }, + "description": "Get access review instances", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewInstance" + ], + "operationId": "ScopeAccessReviewInstances_Create", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/PutAccessReviewInstance.json" + } + }, + "description": "Update access review instance.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewInstanceProperties" + }, + "description": "Access review instance properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful update", + "schema": { + "$ref": "#/definitions/AccessReviewInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/stop": { + "post": { + "tags": [ + "AccessReviewInstanceStop" + ], + "operationId": "ScopeAccessReviewInstance_Stop", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/StopAccessReviewInstance.json" + } + }, + "description": "An action to stop an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/recordAllDecisions": { + "post": { + "tags": [ + "AccessReviewInstanceRecordAllDecisions" + ], + "operationId": "ScopeAccessReviewInstance_RecordAllDecisions", + "x-ms-examples": { + "AccessReviewInstanceRecordAllDecisions": { + "$ref": "./examples/AccessReviewInstanceRecordAllDecisions.json" + } + }, + "description": "An action to approve/deny all decisions for a review with certain filters.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecordAllDecisionsProperties" + }, + "description": "Record all decisions payload." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/resetDecisions": { + "post": { + "tags": [ + "AccessReviewInstanceResetDecisions" + ], + "operationId": "ScopeAccessReviewInstance_ResetDecisions", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/AccessReviewInstanceResetDecisions.json" + } + }, + "description": "An action to reset all decisions for an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/applyDecisions": { + "post": { + "tags": [ + "AccessReviewInstanceApplyDecisions" + ], + "operationId": "ScopeAccessReviewInstance_ApplyDecisions", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/AccessReviewInstanceApplyDecisions.json" + } + }, + "description": "An action to apply all decisions for an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/sendReminders": { + "post": { + "tags": [ + "AccessReviewInstanceSendReminders" + ], + "operationId": "ScopeAccessReviewInstance_SendReminders", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/AccessReviewInstanceSendReminders.json" + } + }, + "description": "An action to send reminders for an access review instance.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions": { + "get": { + "tags": [ + "GetAccessReviewInstanceDecisions" + ], + "operationId": "ScopeAccessReviewInstanceDecisions_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstanceDecisions.json" + } + }, + "description": "Get access review instance decisions", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDecisionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/contactedReviewers": { + "get": { + "tags": [ + "GetAccessReviewInstanceContactedReviewers" + ], + "operationId": "ScopeAccessReviewInstanceContactedReviewers_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstanceContactedReviewers.json" + } + }, + "description": "Get access review instance contacted reviewers", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewContactedReviewerListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Authorization/accessReviewScheduleSettings/default": { + "get": { + "tags": [ + "GetAccessReviewDefaultSettings" + ], + "operationId": "ScopeAccessReviewDefaultSettings_Get", + "x-ms-examples": { + "GetAccessReviewDefaultSettings": { + "$ref": "./examples/GetAccessReviewDefaultSettings.json" + } + }, + "description": "Get access review default settings for the subscription", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDefaultSettings" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "put": { + "tags": [ + "PutAccessReviewDefaultSettings" + ], + "operationId": "ScopeAccessReviewDefaultSettings_Put", + "x-ms-examples": { + "GetAccessReviewDefaultSettings": { + "$ref": "./examples/PutAccessReviewDefaultSettings.json" + } + }, + "description": "Get access review default settings for the subscription", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewScheduleSettings" + }, + "description": "Access review schedule settings." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDefaultSettings" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions": { + "get": { + "tags": [ + "GetAccessReviewScheduleDefinitionsAssignedForMyApproval" + ], + "operationId": "AccessReviewScheduleDefinitionsAssignedForMyApproval_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewScheduleDefinitionsAssignedForMyApproval.json" + } + }, + "description": "Get access review instances assigned for my approval.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewScheduleDefinitionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances": { + "get": { + "tags": [ + "GetAccessReviewInstancesAssignedForMyApproval" + ], + "operationId": "AccessReviewInstancesAssignedForMyApproval_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstancesAssignedForMyApproval.json" + } + }, + "description": "Get access review instances assigned for my approval.", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewInstanceListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}": { + "get": { + "tags": [ + "GetAccessReviewInstance" + ], + "operationId": "AccessReviewInstancesAssignedForMyApproval_GetById", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstanceAssignedForMyApproval.json" + } + }, + "description": "Get single access review instance assigned for my approval.", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewInstance" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/acceptRecommendations": { + "post": { + "tags": [ + "AccessReviewInstanceAcceptRecommmendations" + ], + "operationId": "AccessReviewInstance_AcceptRecommendations", + "x-ms-examples": { + "GetAccessReview": { + "$ref": "./examples/AccessReviewInstanceAcceptRecommendations.json" + } + }, + "description": "An action to accept recommendations for decision in an access review instance.", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Describe the result of a successful operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions": { + "get": { + "tags": [ + "GetAccessReviewMyInstanceDecisions" + ], + "operationId": "AccessReviewInstanceMyDecisions_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstanceMyDecisions.json" + } + }, + "description": "Get my access review instance decisions.", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AccessReviewsFilterParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDecisionListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/contactedReviewers": { + "get": { + "tags": [ + "TenantLevelGetAccessReviewInstanceContactedReviewers" + ], + "operationId": "TenantLevelAccessReviewInstanceContactedReviewers_List", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/TenantLevelGetAccessReviewInstanceContactedReviewers.json" + } + }, + "description": "Get access review instance contacted reviewers", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewContactedReviewerListResult" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Authorization/accessReviewScheduleDefinitions/{scheduleDefinitionId}/instances/{id}/decisions/{decisionId}": { + "get": { + "tags": [ + "GetAccessReviewMyInstanceDecision" + ], + "operationId": "AccessReviewInstanceMyDecisions_GetById", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/GetAccessReviewInstanceMyDecisionById.json" + } + }, + "description": "Get my single access review instance decision.", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "name": "decisionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the decision record." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDecision" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + }, + "patch": { + "tags": [ + "PatchAccessReviewMyInstanceDecision" + ], + "operationId": "AccessReviewInstanceMyDecisions_Patch", + "x-ms-examples": { + "GetAccessReviews": { + "$ref": "./examples/PatchAccessReviewInstanceMyDecisionById.json" + } + }, + "description": "Record a decision.", + "parameters": [ + { + "name": "scheduleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review schedule definition." + }, + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the access review instance." + }, + { + "name": "decisionId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the decision record." + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessReviewDecisionProperties" + }, + "description": "Access review decision properties to patch." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/AccessReviewDecision" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/ErrorDefinition" + } + } + } + } + } + }, + "definitions": { + "AccessReviewScheduleDefinition": { + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review schedule definition id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review schedule definition unique id." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewScheduleDefinitionProperties", + "description": "Access Review properties." + } + }, + "description": "Access Review Schedule Definition." + }, + "AccessReviewScheduleDefinitionProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The display name for the schedule definition." + }, + "status": { + "type": "string", + "readOnly": true, + "description": "This read-only field specifies the status of an accessReview.", + "enum": [ + "NotStarted", + "InProgress", + "Completed", + "Applied", + "Initializing", + "Applying", + "Completing", + "Scheduled", + "AutoReviewing", + "AutoReviewed", + "Starting" + ], + "x-ms-enum": { + "name": "AccessReviewScheduleDefinitionStatus", + "modelAsString": true + } + }, + "descriptionForAdmins": { + "type": "string", + "description": "The description provided by the access review creator and visible to admins." + }, + "descriptionForReviewers": { + "type": "string", + "description": "The description provided by the access review creator to be shown to reviewers." + }, + "createdBy": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewActorIdentity", + "description": "The user or other identity who created this review." + }, + "settings": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewScheduleSettings", + "description": "Access Review Settings." + }, + "scope": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewScope", + "description": "This is used to define what to include in scope of the review. The scope definition includes the resourceId and roleDefinitionId." + }, + "reviewers": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewReviewer" + }, + "x-ms-identifiers": [ + "principalId" + ], + "description": "This is the collection of reviewers." + }, + "backupReviewers": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewReviewer" + }, + "x-ms-identifiers": [ + "principalId" + ], + "description": "This is the collection of backup reviewers." + }, + "reviewersType": { + "type": "string", + "readOnly": true, + "description": "This field specifies the type of reviewers for a review. Usually for a review, reviewers are explicitly assigned. However, in some cases, the reviewers may not be assigned and instead be chosen dynamically. For example managers review or self review.", + "enum": [ + "Assigned", + "Self", + "Managers" + ], + "x-ms-enum": { + "name": "AccessReviewScheduleDefinitionReviewersType", + "modelAsString": true + } + }, + "instances": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewInstance" + }, + "description": "This is the collection of instances returned when one does an expand on it." + } + }, + "description": "Access Review." + }, + "AccessReviewInstance": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review instance id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review instance name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewInstanceProperties", + "description": "Access Review properties." + } + }, + "description": "Access Review Instance." + }, + "AccessReviewInstanceProperties": { + "type": "object", + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "This read-only field specifies the status of an access review instance.", + "enum": [ + "NotStarted", + "InProgress", + "Completed", + "Applied", + "Initializing", + "Applying", + "Completing", + "Scheduled", + "AutoReviewing", + "AutoReviewed", + "Starting" + ], + "x-ms-enum": { + "name": "AccessReviewInstanceStatus", + "modelAsString": true + } + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "The DateTime when the review instance is scheduled to be start.", + "x-nullable": false + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "The DateTime when the review instance is scheduled to end.", + "x-nullable": false + }, + "reviewers": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewReviewer" + }, + "x-ms-identifiers": [ + "principalId" + ], + "description": "This is the collection of reviewers." + }, + "backupReviewers": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewReviewer" + }, + "x-ms-identifiers": [ + "principalId" + ], + "description": "This is the collection of backup reviewers." + }, + "reviewersType": { + "type": "string", + "readOnly": true, + "description": "This field specifies the type of reviewers for a review. Usually for a review, reviewers are explicitly assigned. However, in some cases, the reviewers may not be assigned and instead be chosen dynamically. For example managers review or self review.", + "enum": [ + "Assigned", + "Self", + "Managers" + ], + "x-ms-enum": { + "name": "AccessReviewInstanceReviewersType", + "modelAsString": true + } + } + }, + "description": "Access Review Instance properties." + }, + "AccessReviewScheduleSettings": { + "type": "object", + "properties": { + "mailNotificationsEnabled": { + "type": "boolean", + "description": "Flag to indicate whether sending mails to reviewers and the review creator is enabled." + }, + "reminderNotificationsEnabled": { + "type": "boolean", + "description": "Flag to indicate whether sending reminder emails to reviewers are enabled." + }, + "defaultDecisionEnabled": { + "type": "boolean", + "description": "Flag to indicate whether reviewers are required to provide a justification when reviewing access." + }, + "justificationRequiredOnApproval": { + "type": "boolean", + "description": "Flag to indicate whether the reviewer is required to pass justification when recording a decision." + }, + "defaultDecision": { + "type": "string", + "description": "This specifies the behavior for the autoReview feature when an access review completes.", + "enum": [ + "Approve", + "Deny", + "Recommendation" + ], + "x-ms-enum": { + "name": "DefaultDecisionType", + "modelAsString": true + } + }, + "autoApplyDecisionsEnabled": { + "type": "boolean", + "description": "Flag to indicate whether auto-apply capability, to automatically change the target object access resource, is enabled. If not enabled, a user must, after the review completes, apply the access review." + }, + "recommendationsEnabled": { + "type": "boolean", + "description": "Flag to indicate whether showing recommendations to reviewers is enabled." + }, + "recommendationLookBackDuration": { + "type": "string", + "format": "duration", + "description": "Recommendations for access reviews are calculated by looking back at 30 days of data(w.r.t the start date of the review) by default. However, in some scenarios, customers want to change how far back to look at and want to configure 60 days, 90 days, etc. instead. This setting allows customers to configure this duration. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))" + }, + "instanceDurationInDays": { + "type": "integer", + "format": "int32", + "description": "The duration in days for an instance." + }, + "recurrence": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewRecurrenceSettings", + "description": "Access Review Settings." + } + }, + "description": "Settings of an Access Review." + }, + "AccessReviewDefaultSettings": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review default settings id. This is only going to be default" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review default settings name. This is always going to be Access Review Default Settings" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewScheduleSettings", + "description": "Access Review properties." + } + }, + "description": "Access Review Default Settings." + }, + "AccessReviewRecurrenceSettings": { + "type": "object", + "properties": { + "pattern": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewRecurrencePattern", + "description": "Access Review schedule definition recurrence pattern." + }, + "range": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewRecurrenceRange", + "description": "Access Review schedule definition recurrence range." + } + }, + "description": "Recurrence Settings of an Access Review Schedule Definition." + }, + "AccessReviewRecurrencePattern": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The recurrence type : weekly, monthly, etc.", + "enum": [ + "weekly", + "absoluteMonthly" + ], + "x-ms-enum": { + "name": "AccessReviewRecurrencePatternType", + "modelAsString": true + } + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The interval for recurrence. For a quarterly review, the interval is 3 for type : absoluteMonthly." + } + }, + "description": "Recurrence Pattern of an Access Review Schedule Definition." + }, + "AccessReviewRecurrenceRange": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The recurrence range type. The possible values are: endDate, noEnd, numbered.", + "enum": [ + "endDate", + "noEnd", + "numbered" + ], + "x-ms-enum": { + "name": "AccessReviewRecurrenceRangeType", + "modelAsString": true + } + }, + "numberOfOccurrences": { + "type": "integer", + "format": "int32", + "description": "The number of times to repeat the access review. Required and must be positive if type is numbered." + }, + "startDate": { + "type": "string", + "format": "date-time", + "description": "The DateTime when the review is scheduled to be start. This could be a date in the future. Required on create.", + "x-nullable": true + }, + "endDate": { + "type": "string", + "format": "date-time", + "description": "The DateTime when the review is scheduled to end. Required if type is endDate", + "x-nullable": true + } + }, + "description": "Recurrence Range of an Access Review Schedule Definition." + }, + "AccessReviewHistoryDefinition": { + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review history definition id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review history definition unique id." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewHistoryDefinitionProperties", + "description": "Access Review History Definition properties." + } + }, + "description": "Access Review History Definition." + }, + "AccessReviewHistoryDefinitionProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The display name for the history definition." + }, + "reviewHistoryPeriodStartDateTime": { + "type": "string", + "format": "date-time", + "description": "Date time used when selecting review data, all reviews included in data start on or after this date. For use only with one-time/non-recurring reports.", + "x-nullable": true, + "readOnly": true + }, + "reviewHistoryPeriodEndDateTime": { + "type": "string", + "format": "date-time", + "description": "Date time used when selecting review data, all reviews included in data end on or before this date. For use only with one-time/non-recurring reports.", + "x-nullable": true, + "readOnly": true + }, + "decisions": { + "type": "array", + "items": { + "type": "string", + "description": "Represents a reviewer's decision for a given review", + "enum": [ + "Approve", + "Deny", + "NotReviewed", + "DontKnow", + "NotNotified" + ], + "x-ms-enum": { + "name": "AccessReviewResult", + "modelAsString": true + } + }, + "description": "Collection of review decisions which the history data should be filtered on. For example if Approve and Deny are supplied the data will only contain review results in which the decision maker approved or denied a review request.", + "x-nullable": true + }, + "status": { + "type": "string", + "readOnly": true, + "description": "This read-only field specifies the of the requested review history data. This is either requested, in-progress, done or error.", + "enum": [ + "Requested", + "InProgress", + "Done", + "Error" + ], + "x-ms-enum": { + "name": "AccessReviewHistoryDefinitionStatus", + "modelAsString": true + } + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Date time when history definition was created", + "x-nullable": true, + "readOnly": true + }, + "createdBy": { + "x-nullable": true, + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewActorIdentity", + "description": "The user or other identity who created this history definition." + }, + "scopes": { + "x-nullable": false, + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewScope" + }, + "description": "A collection of scopes used when selecting review history data", + "x-ms-identifiers": [] + }, + "settings": { + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/AccessReviewHistoryScheduleSettings", + "description": "Recurrence settings for recurring history reports, skip for one-time reports." + }, + "instances": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewHistoryInstance" + }, + "description": "Set of access review history instances for this history definition." + } + }, + "description": "Access Review History Instances." + }, + "AccessReviewHistoryInstance": { + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review history definition instance id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review history definition instance unique id." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewHistoryInstanceProperties", + "description": "Access Review History Definition Instance properties." + } + }, + "description": "Access Review History Definition Instance." + }, + "AccessReviewHistoryInstanceProperties": { + "type": "object", + "properties": { + "reviewHistoryPeriodStartDateTime": { + "type": "string", + "format": "date-time", + "readOnly": false, + "description": "Date time used when selecting review data, all reviews included in data start on or after this date. For use only with one-time/non-recurring reports." + }, + "reviewHistoryPeriodEndDateTime": { + "type": "string", + "format": "date-time", + "readOnly": false, + "description": "Date time used when selecting review data, all reviews included in data end on or before this date. For use only with one-time/non-recurring reports." + }, + "displayName": { + "type": "string", + "description": "The display name for the parent history definition." + }, + "status": { + "type": "string", + "readOnly": true, + "description": "Status of the requested review history instance data. This is either requested, in-progress, done or error. The state transitions are as follows - Requested -> InProgress -> Done -> Expired", + "enum": [ + "Requested", + "InProgress", + "Done", + "Error" + ], + "x-ms-enum": { + "name": "AccessReviewHistoryDefinitionStatus", + "modelAsString": true + } + }, + "runDateTime": { + "type": "string", + "format": "date-time", + "description": "Date time when the history data report is scheduled to be generated.", + "x-nullable": true + }, + "fulfilledDateTime": { + "type": "string", + "format": "date-time", + "description": "Date time when the history data report is scheduled to be generated.", + "x-nullable": true + }, + "downloadUri": { + "readOnly": true, + "type": "string", + "description": "Uri which can be used to retrieve review history data. To generate this Uri, generateDownloadUri() must be called for a specific accessReviewHistoryDefinitionInstance. The link expires after a 24 hour period. Callers can see the expiration date time by looking at the 'se' parameter in the generated uri." + }, + "expiration": { + "type": "string", + "format": "date-time", + "description": "Date time when history data report expires and the associated data is deleted.", + "x-nullable": true + } + }, + "description": "Access Review History Definition Instance properties." + }, + "AccessReviewHistoryScheduleSettings": { + "type": "object", + "properties": { + "pattern": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewRecurrencePattern", + "description": "Access Review History Definition recurrence settings." + }, + "range": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewRecurrenceRange", + "description": "Access Review History Definition recurrence settings." + } + }, + "description": "Recurrence settings of an Access Review History Definition." + }, + "AccessReviewScope": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "ResourceId in which this review is getting created" + }, + "roleDefinitionId": { + "type": "string", + "readOnly": true, + "description": "This is used to indicate the role being reviewed" + }, + "principalType": { + "type": "string", + "readOnly": true, + "description": "The identity type user/servicePrincipal to review", + "enum": [ + "user", + "guestUser", + "servicePrincipal", + "user,group", + "redeemedGuestUser" + ], + "x-ms-enum": { + "name": "AccessReviewScopePrincipalType", + "modelAsString": true + } + }, + "assignmentState": { + "type": "string", + "readOnly": true, + "description": "The role assignment state eligible/active to review", + "enum": [ + "eligible", + "active" + ], + "x-ms-enum": { + "name": "AccessReviewScopeAssignmentState", + "modelAsString": true + } + }, + "inactiveDuration": { + "type": "string", + "format": "duration", + "description": "Duration users are inactive for. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))" + }, + "expandNestedMemberships": { + "type": "boolean", + "description": "Flag to indicate whether to expand nested memberships or not." + }, + "includeInheritedAccess": { + "type": "boolean", + "description": "Flag to indicate whether to expand nested memberships or not." + }, + "includeAccessBelowResource": { + "type": "boolean", + "description": "Flag to indicate whether to expand nested memberships or not." + }, + "excludeResourceId": { + "type": "string", + "description": "This is used to indicate the resource id(s) to exclude" + }, + "excludeRoleDefinitionId": { + "type": "string", + "description": "This is used to indicate the role definition id(s) to exclude" + } + }, + "description": "Descriptor for what needs to be reviewed" + }, + "AccessReviewReviewer": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "description": "The id of the reviewer(user/servicePrincipal)" + }, + "principalType": { + "type": "string", + "readOnly": true, + "description": "The identity type : user/servicePrincipal", + "enum": [ + "user", + "servicePrincipal" + ], + "x-ms-enum": { + "name": "AccessReviewReviewerType", + "modelAsString": true + } + } + }, + "description": "Descriptor for what needs to be reviewed" + }, + "AccessReviewDecision": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review decision id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review decision name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewDecisionProperties", + "description": "Access Review Decision properties." + } + }, + "description": "Access Review." + }, + "AccessReviewDecisionProperties": { + "type": "object", + "properties": { + "principal": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewDecisionIdentity", + "description": "Principal associated with the decision record. Can be AccessReviewDecisionUserIdentity or AccessReviewDecisionServicePrincipalIdentity", + "x-nullable": true + }, + "resource": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewDecisionResource", + "description": "Resource associated with this decision record.", + "x-nullable": true + }, + "recommendation": { + "type": "string", + "readOnly": true, + "description": "The feature- generated recommendation shown to the reviewer.", + "enum": [ + "Approve", + "Deny", + "NoInfoAvailable" + ], + "x-ms-enum": { + "name": "AccessRecommendationType", + "modelAsString": true + } + }, + "decision": { + "type": "string", + "description": "The decision on the approval step. This value is initially set to NotReviewed. Approvers can take action of Approve/Deny", + "enum": [ + "Approve", + "Deny", + "NotReviewed", + "DontKnow", + "NotNotified" + ], + "x-ms-enum": { + "name": "AccessReviewResult", + "modelAsString": true + } + }, + "justification": { + "type": "string", + "description": "Justification provided by approvers for their action" + }, + "reviewedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Date Time when a decision was taken.", + "x-nullable": true + }, + "reviewedBy": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewActorIdentity", + "description": "Details of the approver.", + "x-nullable": true + }, + "applyResult": { + "type": "string", + "readOnly": true, + "description": "The outcome of applying the decision.", + "enum": [ + "New", + "Applying", + "AppliedSuccessfully", + "AppliedWithUnknownFailure", + "AppliedSuccessfullyButObjectNotFound", + "ApplyNotSupported" + ], + "x-ms-enum": { + "name": "AccessReviewApplyResult", + "modelAsString": true + } + }, + "appliedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date and time when the review decision was applied.", + "x-nullable": true + }, + "appliedBy": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewActorIdentity", + "description": "Details of the approver.", + "x-nullable": true + }, + "insights": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewDecisionInsight" + }, + "description": "This is the collection of insights for this decision item." + }, + "principalResourceMembership": { + "readOnly": true, + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewDecisionPrincipalResourceMembership", + "description": "Details of the membership type.", + "x-nullable": true + } + }, + "description": "Approval Step." + }, + "AccessReviewDecisionInsight": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review insight id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review insight name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewDecisionInsightProperties", + "description": "Access Review Decision Insight properties." + } + }, + "description": "Access Review Decision Insight." + }, + "AccessReviewDecisionInsightProperties": { + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of insight", + "enum": [ + "userSignInInsight" + ], + "x-ms-enum": { + "name": "AccessReviewDecisionInsightType", + "modelAsString": true + } + }, + "insightCreatedDateTime": { + "readOnly": true, + "format": "date-time", + "description": "Date Time when the insight was created.", + "x-nullable": true + } + }, + "description": "Details of the Insight." + }, + "AccessReviewDecisionUserSignInInsightProperties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AccessReviewDecisionInsightProperties" + }, + { + "type": "object", + "description": "AccessReviewDecisionUserSignInInsightProperties" + } + ], + "x-ms-discriminator-value": "userSignInInsight", + "properties": { + "lastSignInDateTime": { + "readOnly": true, + "format": "date-time", + "description": "Date Time when the user signed into the tenant.", + "x-nullable": true + } + }, + "description": "User Decision Target" + }, + "AccessReviewDecisionResource": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of resource", + "enum": [ + "azureRole" + ], + "x-ms-enum": { + "name": "DecisionResourceType", + "modelAsString": true + } + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The id of resource associated with a decision record." + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The display name of resource associated with a decision record." + } + }, + "description": "Target of the decision." + }, + "RecordAllDecisionsProperties": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The id of principal which needs to be approved/denied." + }, + "resourceId": { + "type": "string", + "readOnly": true, + "description": "The id of resource which needs to be approved/denied." + }, + "decision": { + "type": "string", + "description": "The decision to make. Approvers can take action of Approve/Deny", + "enum": [ + "Approve", + "Deny" + ], + "x-ms-enum": { + "name": "RecordAllDecisionsResult", + "modelAsString": true + } + }, + "justification": { + "type": "string", + "description": "Justification provided by approvers for their action" + } + }, + "description": "Record All Decisions payload." + }, + "AccessReviewDecisionPrincipalResourceMembership": { + "type": "object", + "properties": { + "membershipTypes": { + "type": "array", + "description": "Every decision item in an access review represents a principal's membership to a resource. This property represents details of the membership. Examples of this detail might be whether the principal has direct access or indirect access", + "items": { + "type": "string", + "enum": [ + "direct", + "indirect" + ], + "x-ms-enum": { + "name": "AccessReviewDecisionPrincipalResourceMembershipType", + "modelAsString": true + } + } + } + }, + "description": "Target of the decision." + }, + "AccessReviewDecisionIdentity": { + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of decision target : User/ServicePrincipal", + "enum": [ + "user", + "servicePrincipal" + ], + "x-ms-enum": { + "name": "DecisionTargetType", + "modelAsString": true + } + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The id of principal whose access was reviewed." + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The display name of the user whose access was reviewed." + } + }, + "description": "Target of the decision." + }, + "AccessReviewDecisionUserIdentity": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AccessReviewDecisionIdentity" + }, + { + "type": "object", + "description": "AccessReviewDecisionUserIdentity" + } + ], + "x-ms-discriminator-value": "user", + "properties": { + "userPrincipalName": { + "type": "string", + "readOnly": true, + "description": "The user principal name of the user whose access was reviewed." + } + }, + "description": "User Decision Target" + }, + "AccessReviewDecisionServicePrincipalIdentity": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AccessReviewDecisionIdentity" + }, + { + "type": "object", + "description": "AccessReviewDecisionServicePrincipalIdentity" + } + ], + "x-ms-discriminator-value": "servicePrincipal", + "properties": { + "appId": { + "type": "string", + "readOnly": true, + "description": "The appId for the service principal entity being reviewed" + } + }, + "description": "Service Principal Decision Target" + }, + "AccessReviewActorIdentity": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The identity id" + }, + "principalType": { + "type": "string", + "readOnly": true, + "description": "The identity type : user/servicePrincipal", + "enum": [ + "user", + "servicePrincipal" + ], + "x-ms-enum": { + "name": "AccessReviewActorIdentityType", + "modelAsString": true + } + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The identity display name" + }, + "userPrincipalName": { + "type": "string", + "readOnly": true, + "description": "The user principal name(if valid)" + } + }, + "description": "Details of the actor identity" + }, + "AccessReviewContactedReviewer": { + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The access review reviewer id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The access review reviewer id." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessReviewContactedReviewerProperties", + "description": "Access Review Contacted Reviewer properties." + } + }, + "description": "Access Review Contacted Reviewer." + }, + "AccessReviewContactedReviewerProperties": { + "type": "object", + "properties": { + "userDisplayName": { + "type": "string", + "description": "The display name of the reviewer", + "readOnly": true + }, + "userPrincipalName": { + "type": "string", + "description": "The user principal name of the reviewer", + "readOnly": true + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Date Time when the reviewer was contacted.", + "x-nullable": true + } + }, + "description": "Properties of access review contacted reviewer." + }, + "AccessReviewScheduleDefinitionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewScheduleDefinition" + }, + "description": "Access Review Schedule Definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of Access Review Schedule Definitions." + }, + "AccessReviewInstanceListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewInstance" + }, + "description": "Access Review Instance list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of Access Review Instances." + }, + "AccessReviewHistoryDefinitionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewHistoryDefinition" + }, + "description": "Access Review History Definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of Access Review History Definitions." + }, + "AccessReviewHistoryDefinitionInstanceListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewHistoryInstance" + }, + "description": "Access Review History Definition's Instance list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of Access Review History Instances." + }, + "AccessReviewDecisionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewDecision" + }, + "description": "Access Review Decision list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of access review decisions." + }, + "AccessReviewContactedReviewerListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessReviewContactedReviewer" + }, + "description": "Access Review Contacted Reviewer." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of access review contacted reviewers." + }, + "ErrorDefinition": { + "type": "object", + "title": "Error", + "description": "Error description and code explaining why an operation failed.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinitionProperties", + "description": "Error of the list gateway status." + } + } + }, + "ErrorDefinitionProperties": { + "type": "object", + "title": "Error", + "description": "Error description and code explaining why an operation failed.", + "properties": { + "message": { + "type": "string", + "readOnly": true, + "description": "Description of the error." + }, + "code": { + "type": "string", + "description": "Error code of list gateway." + } + } + }, + "Operation": { + "description": "The definition of a Microsoft.Authorization operation.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Display of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + } + } + }, + "OperationDisplay": { + "description": "The display information for a Microsoft.Authorization operation.", + "type": "object", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.Authorization.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description for the operation.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "The result of a request to list Microsoft.Authorization operations.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the resource.", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request.", + "x-ms-parameter-location": "method" + }, + "AccessReviewsFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Other than standard filters, one custom filter option is supported : 'assignedToMeToReview()'. When one specified $filter=assignedToMeToReview(), only items that are assigned to the calling user to review are returned", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "AccessReviewsHistoryFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Only standard filters on definition name and created date are supported", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2022-08-01-preview/RoleManagementAlerts.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2022-08-01-preview/RoleManagementAlerts.json new file mode 100644 index 000000000..d54c29587 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2022-08-01-preview/RoleManagementAlerts.json @@ -0,0 +1,1343 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2022-08-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_Get", + "description": "Get the specified alert.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert. The scope can be any REST resource instance. For example, use '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/' for a subscription, '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert to get.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the alert.", + "schema": { + "$ref": "#/definitions/Alert" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAlertById": { + "$ref": "./examples/GetAlertById.json" + } + } + }, + "patch": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_Update", + "description": "Update an alert.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert to dismiss.", + "x-ms-skip-url-encoding": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Alert" + }, + "description": "Parameters for the alert." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "NoContent - Successfully updated the alert." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeactivateAlert": { + "$ref": "./examples/UpdateAlert.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_ListForScope", + "description": "Gets alerts for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of alerts.", + "schema": { + "$ref": "#/definitions/AlertListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetAlerts": { + "$ref": "./examples/GetAlerts.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}/refresh": { + "post": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_Refresh", + "description": "Refresh an alert.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert to refresh.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the alert is refreshing.", + "headers": { + "Location": { + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/AlertOperationResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "RefreshAlert": { + "$ref": "./examples/RefreshAlert.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/refresh": { + "post": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_RefreshAll", + "description": "Refresh all alerts for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the alerts are refreshing.", + "headers": { + "Location": { + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/AlertOperationResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "RefreshAllAlerts": { + "$ref": "./examples/RefreshAllAlerts.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlertConfigurations/{alertId}": { + "get": { + "tags": [ + "AlertConfigurations" + ], + "operationId": "AlertConfigurations_Get", + "description": "Get the specified alert configuration.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert configuration. The scope can be any REST resource instance. For example, use '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/' for a subscription, '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert configuration to get.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the alert configuration.", + "schema": { + "$ref": "#/definitions/AlertConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAlertConfigurationById": { + "$ref": "./examples/GetAlertConfigurationById.json" + } + } + }, + "patch": { + "tags": [ + "AlertConfigurations" + ], + "operationId": "AlertConfigurations_Update", + "description": "Update an alert configuration.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert configuration.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert configuration to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AlertConfiguration" + }, + "description": "Parameters for the alert configuration." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "NoContent - Successfully updated the alert." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateAlertConfiguration": { + "$ref": "./examples/UpdateAlertConfiguration.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlertConfigurations": { + "get": { + "tags": [ + "AlertConfigurations" + ], + "operationId": "AlertConfigurations_ListForScope", + "description": "Gets alert configurations for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert configuration.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of alert configurations.", + "schema": { + "$ref": "#/definitions/AlertConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetAlertConfigurations": { + "$ref": "./examples/GetAlertConfigurations.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlertDefinitions/{alertDefinitionId}": { + "get": { + "tags": [ + "AlertDefinitions" + ], + "operationId": "AlertDefinitions_Get", + "description": "Get the specified alert definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert definition. The scope can be any REST resource instance. For example, use '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/' for a subscription, '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert definition to get.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the alert definition.", + "schema": { + "$ref": "#/definitions/AlertDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAlertDefinitionById": { + "$ref": "./examples/GetAlertDefinitionById.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlertDefinitions": { + "get": { + "tags": [ + "AlertDefinitions" + ], + "operationId": "AlertDefinitions_ListForScope", + "description": "Gets alert definitions for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert definition.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of alert definitions.", + "schema": { + "$ref": "#/definitions/AlertDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetAlertDefinitions": { + "$ref": "./examples/GetAlertDefinitions.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}/alertIncidents/{alertIncidentId}": { + "get": { + "tags": [ + "AlertIncidents" + ], + "operationId": "AlertIncidents_Get", + "description": "Get the specified alert incident.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert incident. The scope can be any REST resource instance. For example, use '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/' for a subscription, '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/providers/Microsoft.Subscription/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertIncidentId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert incident to get.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the alert incident.", + "schema": { + "$ref": "#/definitions/AlertIncident" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAlertIncidentById": { + "$ref": "./examples/GetAlertIncidentById.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}/alertIncidents": { + "get": { + "tags": [ + "AlertIncidents" + ], + "operationId": "AlertIncidents_ListForScope", + "description": "Gets alert incidents for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert incident.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of alert incidents.", + "schema": { + "$ref": "#/definitions/AlertIncidentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetAlertIncidents": { + "$ref": "./examples/GetAlertIncidents.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlerts/{alertId}/alertIncidents/{alertIncidentId}/remediate": { + "post": { + "tags": [ + "AlertIncidents" + ], + "operationId": "AlertIncidents_Remediate", + "description": "Remediate an alert incident.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert incident.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "alertIncidentId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alert incident to remediate.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "OK - Returns success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "RemediateAlertIncident": { + "$ref": "./examples/RemediateAlertIncident.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementAlertOperations/{operationId}": { + "get": { + "tags": [ + "AlertOperations" + ], + "operationId": "AlertOperation_Get", + "description": "Get the specified alert operation.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the alert operation.", + "x-ms-skip-url-encoding": true + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the alert operation.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the status of the operation.", + "schema": { + "$ref": "#/definitions/AlertOperationResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetAlertOperation": { + "$ref": "./examples/GetAlertOperationById.json" + } + } + } + } + }, + "definitions": { + "Alert": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The alert ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The alert name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The alert type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertProperties", + "description": "Alert properties." + } + }, + "type": "object", + "description": "The alert." + }, + "AlertProperties": { + "properties": { + "scope": { + "type": "string", + "readOnly": true, + "description": "The alert scope." + }, + "isActive": { + "type": "boolean", + "description": "False by default; true if the alert is active." + }, + "incidentCount": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The number of generated incidents of the alert." + }, + "lastModifiedDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The date time when the alert configuration was updated or new incidents were generated." + }, + "lastScannedDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The date time when the alert was last scanned." + }, + "alertDefinition": { + "$ref": "#/definitions/AlertDefinition", + "readOnly": true, + "description": "The alert definition." + }, + "alertIncidents": { + "type": "array", + "items": { + "$ref": "#/definitions/AlertIncident" + }, + "readOnly": true, + "description": "The alert incidents." + }, + "alertConfiguration": { + "$ref": "#/definitions/AlertConfiguration", + "readOnly": true, + "description": "The alert configuration." + } + }, + "type": "object", + "description": "Alert properties." + }, + "AlertListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Alert" + }, + "description": "Alert list" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Alert list operation result." + }, + "AlertConfiguration": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The alert configuration ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The alert configuration name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The alert configuration type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertConfigurationProperties", + "description": "Alert configuration properties." + } + }, + "type": "object", + "description": "Alert configuration." + }, + "AlertConfigurationProperties": { + "properties": { + "alertDefinitionId": { + "type": "string", + "readOnly": true, + "description": "The alert definition ID." + }, + "scope": { + "type": "string", + "readOnly": true, + "description": "The alert scope." + }, + "isEnabled": { + "type": "boolean", + "readOnly": false, + "description": "True if the alert is enabled, false will disable the scanning for the specific alert." + }, + "alertConfigurationType": { + "type": "string", + "readOnly": false, + "description": "The alert configuration type." + }, + "alertDefinition": { + "$ref": "#/definitions/AlertDefinition", + "readOnly": true, + "description": "The alert definition." + } + }, + "required": [ + "alertConfigurationType" + ], + "type": "object", + "description": "Alert configuration properties.", + "discriminator": "alertConfigurationType" + }, + "AzureRolesAssignedOutsidePimAlertConfigurationProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertConfigurationProperties" + } + ], + "x-ms-discriminator-value": "AzureRolesAssignedOutsidePimAlertConfiguration", + "type": "object", + "description": "The Azure roles assigned outside PIM alert configuration properties." + }, + "DuplicateRoleCreatedAlertConfigurationProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertConfigurationProperties" + } + ], + "x-ms-discriminator-value": "DuplicateRoleCreatedAlertConfiguration", + "type": "object", + "description": "The duplicate role created alert configuration." + }, + "TooManyOwnersAssignedToResourceAlertConfigurationProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertConfigurationProperties" + } + ], + "properties": { + "thresholdNumberOfOwners": { + "type": "integer", + "format": "int32", + "readOnly": false, + "description": "The threshold number of owners." + }, + "thresholdPercentageOfOwnersOutOfAllRoleMembers": { + "type": "integer", + "format": "int32", + "readOnly": false, + "description": "The threshold percentage of owners out of all role members." + } + }, + "x-ms-discriminator-value": "TooManyOwnersAssignedToResourceAlertConfiguration", + "type": "object", + "description": "Too many owners assigned to resource alert configuration properties." + }, + "TooManyPermanentOwnersAssignedToResourceAlertConfigurationProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertConfigurationProperties" + } + ], + "properties": { + "thresholdNumberOfPermanentOwners": { + "type": "integer", + "format": "int32", + "readOnly": false, + "description": "The threshold number of permanent owners." + }, + "thresholdPercentageOfPermanentOwnersOutOfAllOwners": { + "type": "integer", + "format": "int32", + "readOnly": false, + "description": "The threshold percentage of permanent owners out of all owners." + } + }, + "x-ms-discriminator-value": "TooManyPermanentOwnersAssignedToResourceAlertConfiguration", + "type": "object", + "description": "Too many permanent owners assigned to resource alert configuration properties." + }, + "AlertDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The alert definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The alert definition name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The alert definition type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertDefinitionProperties", + "description": "Alert definition properties." + } + }, + "type": "object", + "description": "Alert definition" + }, + "AlertDefinitionProperties": { + "properties": { + "displayName": { + "type": "string", + "readOnly": true, + "description": "The alert display name." + }, + "scope": { + "type": "string", + "readOnly": true, + "description": "The alert scope." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The alert description." + }, + "severityLevel": { + "type": "string", + "readOnly": true, + "description": "Severity level of the alert.", + "enum": [ + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "securityImpact": { + "type": "string", + "readOnly": true, + "description": "Security impact of the alert." + }, + "mitigationSteps": { + "type": "string", + "readOnly": true, + "description": "The methods to mitigate the alert." + }, + "howToPrevent": { + "type": "string", + "readOnly": true, + "description": "The ways to prevent the alert." + }, + "isRemediatable": { + "type": "boolean", + "readOnly": true, + "description": "True if the alert can be remediated; false, otherwise." + }, + "isConfigurable": { + "type": "boolean", + "readOnly": true, + "description": "True if the alert configuration can be configured; false, otherwise." + } + }, + "type": "object", + "description": "Alert definition properties." + }, + "AlertDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AlertDefinition" + }, + "description": "Alert definition list" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Alert definition list operation result." + }, + "AlertConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AlertConfiguration" + }, + "description": "Alert configuration list" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Alert configuration list operation result." + }, + "AlertIncident": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The alert incident ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The alert incident name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The alert incident type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertIncidentProperties", + "description": "Alert incident properties." + } + }, + "type": "object", + "description": "Alert incident" + }, + "AlertIncidentProperties": { + "properties": { + "alertIncidentType": { + "type": "string", + "readOnly": false, + "description": "The alert incident type." + } + }, + "required": [ + "alertIncidentType" + ], + "type": "object", + "description": "Alert incident properties", + "discriminator": "alertIncidentType" + }, + "AzureRolesAssignedOutsidePimAlertIncidentProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertIncidentProperties" + } + ], + "properties": { + "assigneeDisplayName": { + "type": "string", + "readOnly": true, + "description": "The assignee display name." + }, + "assigneeUserPrincipalName": { + "type": "string", + "readOnly": true, + "description": "The assignee user principal name." + }, + "assigneeId": { + "type": "string", + "readOnly": true, + "description": "The assignee ID." + }, + "roleDisplayName": { + "type": "string", + "readOnly": true, + "description": "The role display name." + }, + "roleTemplateId": { + "type": "string", + "readOnly": true, + "description": "The role template ID." + }, + "roleDefinitionId": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "assignmentActivatedDate": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The date the assignment was activated." + }, + "requestorId": { + "type": "string", + "readOnly": true, + "description": "The requestor ID." + }, + "requestorDisplayName": { + "type": "string", + "readOnly": true, + "description": "The requestor display name." + }, + "requestorUserPrincipalName": { + "type": "string", + "readOnly": true, + "description": "The requestor user principal name." + } + }, + "x-ms-discriminator-value": "AzureRolesAssignedOutsidePimAlertIncident", + "type": "object", + "description": "Azure roles assigned outside PIM alert incident properties." + }, + "DuplicateRoleCreatedAlertIncidentProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertIncidentProperties" + } + ], + "properties": { + "roleName": { + "type": "string", + "readOnly": true, + "description": "The role name." + }, + "duplicateRoles": { + "type": "string", + "readOnly": true, + "description": "The duplicate roles." + }, + "reason": { + "type": "string", + "readOnly": true, + "description": "The reason for the incident." + } + }, + "x-ms-discriminator-value": "DuplicateRoleCreatedAlertIncident", + "type": "object", + "description": "Duplicate role created alert incident properties." + }, + "TooManyOwnersAssignedToResourceAlertIncidentProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertIncidentProperties" + } + ], + "properties": { + "assigneeName": { + "type": "string", + "readOnly": true, + "description": "The assignee name." + }, + "assigneeType": { + "type": "string", + "readOnly": true, + "description": "The assignee type." + } + }, + "x-ms-discriminator-value": "TooManyOwnersAssignedToResourceAlertIncident", + "type": "object", + "description": "Too many owners assigned to resource alert incident properties." + }, + "TooManyPermanentOwnersAssignedToResourceAlertIncidentProperties": { + "allOf": [ + { + "$ref": "#/definitions/AlertIncidentProperties" + } + ], + "properties": { + "assigneeName": { + "type": "string", + "readOnly": true, + "description": "The assignee name." + }, + "assigneeType": { + "type": "string", + "readOnly": true, + "description": "The assignee type." + } + }, + "x-ms-discriminator-value": "TooManyPermanentOwnersAssignedToResourceAlertIncident", + "type": "object", + "description": "Too many permanent owners assigned to resource alert incident properties." + }, + "AlertIncidentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AlertIncident" + }, + "description": "Alert incident list" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Alert incident list operation result." + }, + "AlertOperationResult": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The id of the alert operation." + }, + "status": { + "type": "string", + "readOnly": true, + "description": "The status of the alert operation." + }, + "statusDetail": { + "type": "string", + "readOnly": true, + "description": "The status detail of the alert operation." + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The created date of the alert operation." + }, + "lastActionDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The last action date of the alert operation." + }, + "resourceLocation": { + "type": "string", + "readOnly": true, + "description": "The location of the alert associated with the operation." + } + }, + "type": "object", + "description": "Alert operation result" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/EligibleChildResources.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/EligibleChildResources.json new file mode 100644 index 000000000..8dbb969a8 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/EligibleChildResources.json @@ -0,0 +1,154 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/eligibleChildResources": { + "get": { + "tags": [ + "eligibleChildResources" + ], + "operationId": "EligibleChildResources_Get", + "description": "Get the child resources of a resource on which user has eligible access", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=resourceType+eq+'Subscription' to filter on only resource of type = 'Subscription'. Use $filter=resourceType+eq+'subscription'+or+resourceType+eq+'resourcegroup' to filter on resource of type = 'Subscription' or 'ResourceGroup'" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role management policy.", + "schema": { + "$ref": "#/definitions/EligibleChildResourcesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetEligibleChildResourcesByScope": { + "$ref": "./examples/GetEligibleChildResourcesByScope.json" + } + } + } + } + }, + "definitions": { + "EligibleChildResourcesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EligibleChildResource" + }, + "description": "Eligible child resource list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Eligible child resources list operation result." + }, + "EligibleChildResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The resource scope Id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The resource type." + } + }, + "type": "object", + "description": "Eligible child resource" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentSchedule.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentSchedule.json new file mode 100644 index 000000000..3571ea36a --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentSchedule.json @@ -0,0 +1,420 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleAssignmentSchedules/{roleAssignmentScheduleName}": { + "get": { + "tags": [ + "roleAssignmentSchedules" + ], + "operationId": "RoleAssignmentSchedules_Get", + "description": "Get the specified role assignment schedule for a resource scope", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment schedule.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentScheduleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role assignment schedule to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment schedule.", + "schema": { + "$ref": "#/definitions/RoleAssignmentSchedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignmentScheduleByName": { + "$ref": "./examples/GetRoleAssignmentScheduleByName.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignmentSchedules": { + "get": { + "tags": [ + "roleAssignmentSchedules" + ], + "operationId": "RoleAssignmentSchedules_ListForScope", + "description": "Gets role assignment schedules for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments schedules.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignment schedules at or above the scope. Use $filter=principalId eq {id} to return all role assignment schedules at, above or below the scope for the specified principal. Use $filter=assignedTo('{userId}') to return all role assignment schedules for the current user. Use $filter=asTarget() to return all role assignment schedules created for the current user." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments schedules.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentScheduleFilter", + "x-ms-examples": { + "GetRoleAssignmentSchedulesByScope": { + "$ref": "./examples/GetRoleAssignmentSchedulesByScope.json" + } + } + } + } + }, + "definitions": { + "RoleAssignmentScheduleFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment schedule of the specific principal." + }, + "roleDefinitionId": { + "type": "string", + "description": "Returns role assignment schedule of the specific role definition." + }, + "status": { + "type": "string", + "description": "Returns role assignment schedule instances of the specific status." + } + }, + "type": "object", + "description": "Role assignment schedule filter" + }, + "RoleAssignmentScheduleProperties": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment schedule scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "x-ms-enum": { + "name": "principalType", + "modelAsString": true + } + }, + "roleAssignmentScheduleRequestId": { + "type": "string", + "description": "The id of roleAssignmentScheduleRequest used to create this roleAssignmentSchedule" + }, + "linkedRoleEligibilityScheduleId": { + "type": "string", + "description": "The id of roleEligibilitySchedule used to activated this roleAssignmentSchedule" + }, + "assignmentType": { + "type": "string", + "description": "Assignment type of the role assignment schedule", + "enum": [ + "Activated", + "Assigned" + ], + "x-ms-enum": { + "name": "AssignmentType", + "modelAsString": true + } + }, + "memberType": { + "type": "string", + "description": "Membership type of the role assignment schedule", + "enum": [ + "Inherited", + "Direct", + "Group" + ], + "x-ms-enum": { + "name": "MemberType", + "modelAsString": true + } + }, + "status": { + "type": "string", + "description": "The status of the role assignment schedule.", + "enum": [ + "Accepted", + "PendingEvaluation", + "Granted", + "Denied", + "PendingProvisioning", + "Provisioned", + "PendingRevocation", + "Revoked", + "Canceled", + "Failed", + "PendingApprovalProvisioning", + "PendingApproval", + "FailedAsResourceIsLocked", + "PendingAdminDecision", + "AdminApproved", + "AdminDenied", + "TimedOut", + "ProvisioningStarted", + "Invalid", + "PendingScheduleCreation", + "ScheduleCreated", + "PendingExternalProvisioning" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Start DateTime when role assignment schedule" + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "End DateTime when role assignment schedule" + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "type": "string", + "format": "date-time", + "description": "DateTime when role assignment schedule was created" + }, + "updatedOn": { + "type": "string", + "format": "date-time", + "description": "DateTime when role assignment schedule was modified" + }, + "expandedProperties": { + "type": "object", + "description": "Additional properties of principal, scope and role definition", + "$ref": "#/definitions/ExpandedProperties" + } + }, + "type": "object", + "description": "Role assignment schedule properties with scope." + }, + "RoleAssignmentSchedule": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule Id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentScheduleProperties", + "description": "Role assignment schedule properties." + } + }, + "type": "object", + "description": "Role Assignment schedule" + }, + "RoleAssignmentScheduleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentSchedule" + }, + "description": "Role assignment schedule list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role assignment schedule list operation result." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + }, + "ExpandedProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "principal": { + "type": "object", + "description": "Details of the principal", + "properties": { + "id": { + "type": "string", + "description": "Id of the principal" + }, + "displayName": { + "type": "string", + "description": "Display name of the principal" + }, + "email": { + "type": "string", + "description": "Email id of the principal" + }, + "type": { + "type": "string", + "description": "Type of the principal" + } + } + } + }, + "type": "object" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleInstance.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleInstance.json new file mode 100644 index 000000000..ccbbfa902 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleInstance.json @@ -0,0 +1,427 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleInstances": { + "get": { + "tags": [ + "roleAssignmentScheduleInstances" + ], + "operationId": "RoleAssignmentScheduleInstances_ListForScope", + "description": "Gets role assignment schedule instances of a role assignment schedule.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment schedule.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignment schedules at or above the scope. Use $filter=principalId eq {id} to return all role assignment schedules at, above or below the scope for the specified principal. Use $filter=assignedTo('{userId}') to return all role assignment schedule instances for the user. Use $filter=asTarget() to return all role assignment schedule instances created for the current user." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns array of role assignment schedule instances.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleInstanceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentScheduleInstanceFilter", + "x-ms-examples": { + "GetRoleAssignmentScheduleInstancesByScope": { + "$ref": "./examples/GetRoleAssignmentScheduleInstancesByScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleInstances/{roleAssignmentScheduleInstanceName}": { + "get": { + "tags": [ + "roleAssignmentScheduleInstances" + ], + "operationId": "RoleAssignmentScheduleInstances_Get", + "description": "Gets the specified role assignment schedule instance.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments schedules.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentScheduleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (hash of schedule name + time) of the role assignment schedule to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment schedule instance.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignmentScheduleInstanceByName": { + "$ref": "./examples/GetRoleAssignmentScheduleInstanceByName.json" + } + } + } + } + }, + "definitions": { + "RoleAssignmentScheduleInstanceFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment schedule instances of the specific principal." + }, + "roleDefinitionId": { + "type": "string", + "description": "Returns role assignment schedule instances of the specific role definition." + }, + "status": { + "type": "string", + "description": "Returns role assignment schedule instances of the specific status." + }, + "roleAssignmentScheduleId": { + "type": "string", + "description": "Returns role assignment schedule instances belonging to a specific role assignment schedule." + } + }, + "type": "object", + "description": "Role assignment schedule instance filter" + }, + "RoleAssignmentScheduleInstanceProperties": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment schedule scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "x-ms-enum": { + "name": "principalType", + "modelAsString": true + } + }, + "roleAssignmentScheduleId": { + "type": "string", + "description": "Id of the master role assignment schedule" + }, + "originRoleAssignmentId": { + "type": "string", + "description": "Role Assignment Id in external system" + }, + "status": { + "type": "string", + "description": "The status of the role assignment schedule instance.", + "enum": [ + "Accepted", + "PendingEvaluation", + "Granted", + "Denied", + "PendingProvisioning", + "Provisioned", + "PendingRevocation", + "Revoked", + "Canceled", + "Failed", + "PendingApprovalProvisioning", + "PendingApproval", + "FailedAsResourceIsLocked", + "PendingAdminDecision", + "AdminApproved", + "AdminDenied", + "TimedOut", + "ProvisioningStarted", + "Invalid", + "PendingScheduleCreation", + "ScheduleCreated", + "PendingExternalProvisioning" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "The startDateTime of the role assignment schedule instance" + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "The endDateTime of the role assignment schedule instance" + }, + "linkedRoleEligibilityScheduleId": { + "type": "string", + "description": "roleEligibilityScheduleId used to activate" + }, + "linkedRoleEligibilityScheduleInstanceId": { + "type": "string", + "description": "roleEligibilityScheduleInstanceId linked to this roleAssignmentScheduleInstance" + }, + "assignmentType": { + "type": "string", + "description": "Assignment type of the role assignment schedule", + "enum": [ + "Activated", + "Assigned" + ], + "x-ms-enum": { + "name": "AssignmentType", + "modelAsString": true + } + }, + "memberType": { + "type": "string", + "description": "Membership type of the role assignment schedule", + "enum": [ + "Inherited", + "Direct", + "Group" + ], + "x-ms-enum": { + "name": "MemberType", + "modelAsString": true + } + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "type": "string", + "format": "date-time", + "description": "DateTime when role assignment schedule was created" + }, + "expandedProperties": { + "type": "object", + "description": "Additional properties of principal, scope and role definition", + "$ref": "#/definitions/ExpandedProperties" + } + }, + "type": "object", + "description": "Role assignment schedule properties with scope." + }, + "RoleAssignmentScheduleInstance": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule instance ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule instance name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule instance type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentScheduleInstanceProperties", + "description": "Role assignment schedule instance properties." + } + }, + "type": "object", + "description": "Information about current or upcoming role assignment schedule instance" + }, + "RoleAssignmentScheduleInstanceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentScheduleInstance" + }, + "description": "Role assignment schedule instance list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role assignment schedule instance list operation result." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + }, + "ExpandedProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "principal": { + "type": "object", + "description": "Details of the principal", + "properties": { + "id": { + "type": "string", + "description": "Id of the principal" + }, + "displayName": { + "type": "string", + "description": "Display name of the principal" + }, + "email": { + "type": "string", + "description": "Email id of the principal" + }, + "type": { + "type": "string", + "description": "Type of the principal" + } + } + } + }, + "type": "object" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleRequest.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleRequest.json new file mode 100644 index 000000000..ab3d25b17 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleRequest.json @@ -0,0 +1,642 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests/{roleAssignmentScheduleRequestName}": { + "put": { + "tags": [ + "RoleAssignmentScheduleRequests" + ], + "operationId": "RoleAssignmentScheduleRequests_Create", + "description": "Creates a role assignment schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment schedule request to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "A GUID for the role assignment to create. The name must be unique and different for each role assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleRequest" + }, + "description": "Parameters for the role assignment schedule request." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PutRoleAssignmentScheduleRequest": { + "$ref": "./examples/PutRoleAssignmentScheduleRequest.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignmentScheduleRequests" + ], + "operationId": "RoleAssignmentScheduleRequests_Get", + "description": "Get the specified role assignment schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment schedule request.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role assignment schedule request to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment schedule request.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignmentScheduleRequestByName": { + "$ref": "./examples/GetRoleAssignmentScheduleRequestByName.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests": { + "get": { + "tags": [ + "RoleAssignmentScheduleRequests" + ], + "operationId": "RoleAssignmentScheduleRequests_ListForScope", + "description": "Gets role assignment schedule requests for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments schedule requests.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignment schedule requests at or above the scope. Use $filter=principalId eq {id} to return all role assignment schedule requests at, above or below the scope for the specified principal. Use $filter=asRequestor() to return all role assignment schedule requests requested by the current user. Use $filter=asTarget() to return all role assignment schedule requests created for the current user. Use $filter=asApprover() to return all role assignment schedule requests where the current user is an approver." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments schedule requests.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentScheduleRequestFilter", + "x-ms-examples": { + "GetRoleAssignmentScheduleRequestByScope": { + "$ref": "./examples/GetRoleAssignmentScheduleRequestByScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests/{roleAssignmentScheduleRequestName}/cancel": { + "post": { + "tags": [ + "RoleAssignmentScheduleRequests" + ], + "operationId": "RoleAssignmentScheduleRequests_Cancel", + "description": "Cancels a pending role assignment schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment request to cancel.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment request to cancel." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CancelRoleAssignmentScheduleRequestByName": { + "$ref": "./examples/CancelRoleAssignmentScheduleRequestByName.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignmentScheduleRequests/{roleAssignmentScheduleRequestName}/validate": { + "post": { + "tags": [ + "RoleAssignmentScheduleRequests" + ], + "operationId": "RoleAssignmentScheduleRequests_Validate", + "description": "Validates a new role assignment schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment request to validate.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment request to validate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleRequest" + }, + "description": "Parameters for the role assignment schedule request." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment request.", + "schema": { + "$ref": "#/definitions/RoleAssignmentScheduleRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ValidateRoleAssignmentScheduleRequestByName": { + "$ref": "./examples/ValidateRoleAssignmentScheduleRequestByName.json" + } + } + } + } + }, + "definitions": { + "RoleAssignmentScheduleRequestFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment requests of the specific principal." + }, + "roleDefinitionId": { + "type": "string", + "description": "Returns role assignment requests of the specific role definition." + }, + "requestorId": { + "type": "string", + "description": "Returns role assignment requests created by specific principal." + }, + "status": { + "type": "string", + "description": "Returns role assignment requests of specific status." + } + }, + "type": "object", + "description": "Role assignment schedule request filter" + }, + "RoleAssignmentScheduleRequestProperties": { + "properties": { + "scope": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule request scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "readOnly": true, + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "x-ms-enum": { + "name": "principalType", + "modelAsString": true + } + }, + "requestType": { + "type": "string", + "description": "The type of the role assignment schedule request. Eg: SelfActivate, AdminAssign etc", + "enum": [ + "AdminAssign", + "AdminRemove", + "AdminUpdate", + "AdminExtend", + "AdminRenew", + "SelfActivate", + "SelfDeactivate", + "SelfExtend", + "SelfRenew" + ], + "x-ms-enum": { + "name": "RequestType", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": true, + "description": "The status of the role assignment schedule request.", + "enum": [ + "Accepted", + "PendingEvaluation", + "Granted", + "Denied", + "PendingProvisioning", + "Provisioned", + "PendingRevocation", + "Revoked", + "Canceled", + "Failed", + "PendingApprovalProvisioning", + "PendingApproval", + "FailedAsResourceIsLocked", + "PendingAdminDecision", + "AdminApproved", + "AdminDenied", + "TimedOut", + "ProvisioningStarted", + "Invalid", + "PendingScheduleCreation", + "ScheduleCreated", + "PendingExternalProvisioning" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "approvalId": { + "type": "string", + "readOnly": true, + "description": "The approvalId of the role assignment schedule request." + }, + "targetRoleAssignmentScheduleId": { + "type": "string", + "description": "The resultant role assignment schedule id or the role assignment schedule id being updated" + }, + "targetRoleAssignmentScheduleInstanceId": { + "type": "string", + "description": "The role assignment schedule instance id being updated" + }, + "scheduleInfo": { + "properties": { + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Start DateTime of the role assignment schedule." + }, + "expiration": { + "properties": { + "type": { + "type": "string", + "description": "Type of the role assignment schedule expiration", + "enum": [ + "AfterDuration", + "AfterDateTime", + "NoExpiration" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": true + } + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "End DateTime of the role assignment schedule." + }, + "duration": { + "type": "string", + "description": "Duration of the role assignment schedule in TimeSpan." + } + }, + "type": "object", + "description": "Expiration of the role assignment schedule" + } + }, + "type": "object", + "description": "Schedule info of the role assignment schedule" + }, + "linkedRoleEligibilityScheduleId": { + "type": "string", + "description": "The linked role eligibility schedule id - to activate an eligibility." + }, + "justification": { + "type": "string", + "description": "Justification for the role assignment" + }, + "ticketInfo": { + "properties": { + "ticketNumber": { + "type": "string", + "description": "Ticket number for the role assignment" + }, + "ticketSystem": { + "type": "string", + "description": "Ticket system name for the role assignment" + } + }, + "type": "object", + "description": "Ticket Info of the role assignment" + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "DateTime when role assignment schedule request was created" + }, + "requestorId": { + "type": "string", + "readOnly": true, + "description": "Id of the user who created this request" + }, + "expandedProperties": { + "type": "object", + "readOnly": true, + "description": "Additional properties of principal, scope and role definition", + "$ref": "#/definitions/ExpandedProperties" + } + }, + "required": [ + "roleDefinitionId", + "principalId", + "requestType" + ], + "type": "object", + "description": "Role assignment schedule request properties with scope." + }, + "RoleAssignmentScheduleRequest": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule request ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule request name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment schedule request type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentScheduleRequestProperties", + "description": "Role assignment schedule request properties." + } + }, + "type": "object", + "description": "Role Assignment schedule request" + }, + "RoleAssignmentScheduleRequestListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentScheduleRequest" + }, + "description": "Role assignment schedule request list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role assignment schedule request list operation result." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + }, + "ExpandedProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "principal": { + "type": "object", + "description": "Details of the principal", + "properties": { + "id": { + "type": "string", + "description": "Id of the principal" + }, + "displayName": { + "type": "string", + "description": "Display name of the principal" + }, + "email": { + "type": "string", + "description": "Email id of the principal" + }, + "type": { + "type": "string", + "description": "Type of the principal" + } + } + } + }, + "type": "object", + "description": "Provides role assignment request scope, role definition and principal properties for expansion. " + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilitySchedule.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilitySchedule.json new file mode 100644 index 000000000..45e1f5bb7 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilitySchedule.json @@ -0,0 +1,404 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleEligibilitySchedules/{roleEligibilityScheduleName}": { + "get": { + "tags": [ + "roleEligibilitySchedules" + ], + "operationId": "RoleEligibilitySchedules_Get", + "description": "Get the specified role eligibility schedule for a resource scope", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedule.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleEligibilityScheduleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role eligibility schedule to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role eligibility schedule.", + "schema": { + "$ref": "#/definitions/RoleEligibilitySchedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleEligibilityScheduleByName": { + "$ref": "./examples/GetRoleEligibilityScheduleByName.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleEligibilitySchedules": { + "get": { + "tags": [ + "roleEligibilitySchedules" + ], + "operationId": "RoleEligibilitySchedules_ListForScope", + "description": "Gets role eligibility schedules for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedules.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role eligibility schedules at or above the scope. Use $filter=principalId eq {id} to return all role eligibility schedules at, above or below the scope for the specified principal. Use $filter=assignedTo('{userId}') to return all role eligibility schedules for the user. Use $filter=asTarget() to return all role eligibility schedules created for the current user." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role eligibility schedules.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleEligibilityScheduleFilter", + "x-ms-examples": { + "GetRoleEligibilitySchedulesByScope": { + "$ref": "./examples/GetRoleEligibilitySchedulesByScope.json" + } + } + } + } + }, + "definitions": { + "RoleEligibilityScheduleFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role eligibility schedule of the specific principal." + }, + "roleDefinitionId": { + "type": "string", + "description": "Returns role eligibility schedule of the specific role definition." + }, + "status": { + "type": "string", + "description": "Returns role eligibility schedule of the specific status." + } + }, + "type": "object", + "description": "Role eligibility schedule filter" + }, + "RoleEligibilityScheduleProperties": { + "properties": { + "scope": { + "type": "string", + "description": "The role eligibility schedule scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "x-ms-enum": { + "name": "principalType", + "modelAsString": true + } + }, + "roleEligibilityScheduleRequestId": { + "type": "string", + "description": "The id of roleEligibilityScheduleRequest used to create this roleAssignmentSchedule" + }, + "memberType": { + "type": "string", + "description": "Membership type of the role eligibility schedule", + "enum": [ + "Inherited", + "Direct", + "Group" + ], + "x-ms-enum": { + "name": "MemberType", + "modelAsString": true + } + }, + "status": { + "type": "string", + "description": "The status of the role eligibility schedule.", + "enum": [ + "Accepted", + "PendingEvaluation", + "Granted", + "Denied", + "PendingProvisioning", + "Provisioned", + "PendingRevocation", + "Revoked", + "Canceled", + "Failed", + "PendingApprovalProvisioning", + "PendingApproval", + "FailedAsResourceIsLocked", + "PendingAdminDecision", + "AdminApproved", + "AdminDenied", + "TimedOut", + "ProvisioningStarted", + "Invalid", + "PendingScheduleCreation", + "ScheduleCreated", + "PendingExternalProvisioning" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Start DateTime when role eligibility schedule" + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "End DateTime when role eligibility schedule" + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "type": "string", + "format": "date-time", + "description": "DateTime when role eligibility schedule was created" + }, + "updatedOn": { + "type": "string", + "format": "date-time", + "description": "DateTime when role eligibility schedule was modified" + }, + "expandedProperties": { + "type": "object", + "description": "Additional properties of principal, scope and role definition", + "$ref": "#/definitions/ExpandedProperties" + } + }, + "type": "object", + "description": "Role eligibility schedule properties with scope." + }, + "RoleEligibilitySchedule": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule Id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleEligibilityScheduleProperties", + "description": "role eligibility schedule properties." + } + }, + "type": "object", + "description": "Role eligibility schedule" + }, + "RoleEligibilityScheduleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleEligibilitySchedule" + }, + "description": "role eligibility schedule list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "role eligibility schedule list operation result." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + }, + "ExpandedProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "principal": { + "type": "object", + "description": "Details of the principal", + "properties": { + "id": { + "type": "string", + "description": "Id of the principal" + }, + "displayName": { + "type": "string", + "description": "Display name of the principal" + }, + "email": { + "type": "string", + "description": "Email id of the principal" + }, + "type": { + "type": "string", + "description": "Type of the principal" + } + } + } + }, + "type": "object" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleInstance.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleInstance.json new file mode 100644 index 000000000..8d6cad213 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleInstance.json @@ -0,0 +1,403 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role eligibility grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleInstances": { + "get": { + "tags": [ + "roleEligibilityScheduleInstances" + ], + "operationId": "RoleEligibilityScheduleInstances_ListForScope", + "description": "Gets role eligibility schedule instances of a role eligibility schedule.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedule.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignment schedules at or above the scope. Use $filter=principalId eq {id} to return all role assignment schedules at, above or below the scope for the specified principal. Use $filter=assignedTo('{userId}') to return all role eligibility schedules for the user. Use $filter=asTarget() to return all role eligibility schedules created for the current user." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns array of role eligibility schedule instances.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleInstanceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleEligibilityScheduleInstanceFilter", + "x-ms-examples": { + "GetRoleEligibilityScheduleInstancesByScope": { + "$ref": "./examples/GetRoleEligibilityScheduleInstancesByScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleInstances/{roleEligibilityScheduleInstanceName}": { + "get": { + "tags": [ + "roleEligibilityScheduleInstances" + ], + "operationId": "RoleEligibilityScheduleInstances_Get", + "description": "Gets the specified role eligibility schedule instance.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedules.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleEligibilityScheduleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (hash of schedule name + time) of the role eligibility schedule to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role eligibility schedule instance.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleEligibilityScheduleInstanceByName": { + "$ref": "./examples/GetRoleEligibilityScheduleInstanceByName.json" + } + } + } + } + }, + "definitions": { + "RoleEligibilityScheduleInstanceFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role eligibility schedule instances of the specific principal." + }, + "roleDefinitionId": { + "type": "string", + "description": "Returns role eligibility schedule instances of the specific role definition." + }, + "status": { + "type": "string", + "description": "Returns role eligibility schedule instances of the specific status." + }, + "roleEligibilityScheduleId": { + "type": "string", + "description": "Returns role eligibility schedule instances belonging to a specific role eligibility schedule." + } + }, + "type": "object", + "description": "Role eligibility schedule instance filter" + }, + "RoleEligibilityScheduleInstanceProperties": { + "properties": { + "scope": { + "type": "string", + "description": "The role eligibility schedule scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "x-ms-enum": { + "name": "principalType", + "modelAsString": true + } + }, + "roleEligibilityScheduleId": { + "type": "string", + "description": "Id of the master role eligibility schedule" + }, + "status": { + "type": "string", + "description": "The status of the role eligibility schedule instance", + "enum": [ + "Accepted", + "PendingEvaluation", + "Granted", + "Denied", + "PendingProvisioning", + "Provisioned", + "PendingRevocation", + "Revoked", + "Canceled", + "Failed", + "PendingApprovalProvisioning", + "PendingApproval", + "FailedAsResourceIsLocked", + "PendingAdminDecision", + "AdminApproved", + "AdminDenied", + "TimedOut", + "ProvisioningStarted", + "Invalid", + "PendingScheduleCreation", + "ScheduleCreated", + "PendingExternalProvisioning" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "The startDateTime of the role eligibility schedule instance" + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "The endDateTime of the role eligibility schedule instance" + }, + "memberType": { + "type": "string", + "description": "Membership type of the role eligibility schedule", + "enum": [ + "Inherited", + "Direct", + "Group" + ], + "x-ms-enum": { + "name": "MemberType", + "modelAsString": true + } + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "type": "string", + "format": "date-time", + "description": "DateTime when role eligibility schedule was created" + }, + "expandedProperties": { + "type": "object", + "description": "Additional properties of principal, scope and role definition", + "$ref": "#/definitions/ExpandedProperties" + } + }, + "type": "object", + "description": "Role eligibility schedule properties with scope." + }, + "RoleEligibilityScheduleInstance": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule instance ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule instance name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule instance type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleEligibilityScheduleInstanceProperties", + "description": "Role eligibility schedule instance properties." + } + }, + "type": "object", + "description": "Information about current or upcoming role eligibility schedule instance" + }, + "RoleEligibilityScheduleInstanceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleEligibilityScheduleInstance" + }, + "description": "Role eligibility schedule instance list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role eligibility schedule instance list operation result." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + }, + "ExpandedProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "principal": { + "type": "object", + "description": "Details of the principal", + "properties": { + "id": { + "type": "string", + "description": "Id of the principal" + }, + "displayName": { + "type": "string", + "description": "Display name of the principal" + }, + "email": { + "type": "string", + "description": "Email id of the principal" + }, + "type": { + "type": "string", + "description": "Type of the principal" + } + } + } + }, + "type": "object" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleRequest.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleRequest.json new file mode 100644 index 000000000..d7a89f8e3 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleRequest.json @@ -0,0 +1,638 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role eligibility grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests/{roleEligibilityScheduleRequestName}": { + "put": { + "tags": [ + "RoleEligibilityScheduleRequests" + ], + "operationId": "RoleEligibilityScheduleRequests_Create", + "description": "Creates a role eligibility schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedule request to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleEligibilityScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role eligibility to create. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleRequest" + }, + "description": "Parameters for the role eligibility schedule request." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role eligibility schedule request.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PutRoleEligibilityScheduleRequest": { + "$ref": "./examples/PutRoleEligibilityScheduleRequest.json" + } + } + }, + "get": { + "tags": [ + "RoleEligibilityScheduleRequests" + ], + "operationId": "RoleEligibilityScheduleRequests_Get", + "description": "Get the specified role eligibility schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedule request.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleEligibilityScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role eligibility schedule request to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role eligibility schedule request.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleEligibilityScheduleRequestByName": { + "$ref": "./examples/GetRoleEligibilityScheduleRequestByName.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests": { + "get": { + "tags": [ + "RoleEligibilityScheduleRequests" + ], + "operationId": "RoleEligibilityScheduleRequests_ListForScope", + "description": "Gets role eligibility schedule requests for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility schedule requests.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role eligibility schedule requests at or above the scope. Use $filter=principalId eq {id} to return all role eligibility schedule requests at, above or below the scope for the specified principal. Use $filter=asRequestor() to return all role eligibility schedule requests requested by the current user. Use $filter=asTarget() to return all role eligibility schedule requests created for the current user. Use $filter=asApprover() to return all role eligibility schedule requests where the current user is an approver." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role eligibility schedule requests.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleEligibilityScheduleRequestFilter", + "x-ms-examples": { + "GetRoleEligibilityScheduleRequestByScope": { + "$ref": "./examples/GetRoleEligibilityScheduleRequestByScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests/{roleEligibilityScheduleRequestName}/cancel": { + "post": { + "tags": [ + "RoleEligibilityScheduleRequests" + ], + "operationId": "RoleEligibilityScheduleRequests_Cancel", + "description": "Cancels a pending role eligibility schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility request to cancel.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleEligibilityScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role eligibility request to cancel." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CancelRoleEligibilityScheduleRequestByName": { + "$ref": "./examples/CancelRoleEligibilityScheduleRequestByName.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleEligibilityScheduleRequests/{roleEligibilityScheduleRequestName}/validate": { + "post": { + "tags": [ + "RoleEligibilityScheduleRequests" + ], + "operationId": "RoleEligibilityScheduleRequests_Validate", + "description": "Validates a new role eligibility schedule request.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role eligibility request to validate.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleEligibilityScheduleRequestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role eligibility request to validate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleRequest" + }, + "description": "Parameters for the role eligibility schedule request." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role eligibility schedule request.", + "schema": { + "$ref": "#/definitions/RoleEligibilityScheduleRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ValidateRoleEligibilityScheduleRequestByName": { + "$ref": "./examples/ValidateRoleEligibilityScheduleRequestByName.json" + } + } + } + } + }, + "definitions": { + "RoleEligibilityScheduleRequestFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role eligibility requests of the specific principal." + }, + "roleDefinitionId": { + "type": "string", + "description": "Returns role eligibility requests of the specific role definition." + }, + "requestorId": { + "type": "string", + "description": "Returns role eligibility requests created by specific principal." + }, + "status": { + "type": "string", + "description": "Returns role eligibility requests of specific status." + } + }, + "type": "object", + "description": "Role eligibility schedule request filter" + }, + "RoleEligibilityScheduleRequestProperties": { + "properties": { + "scope": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule request scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "readOnly": true, + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "x-ms-enum": { + "name": "principalType", + "modelAsString": true + } + }, + "requestType": { + "type": "string", + "description": "The type of the role assignment schedule request. Eg: SelfActivate, AdminAssign etc", + "enum": [ + "AdminAssign", + "AdminRemove", + "AdminUpdate", + "AdminExtend", + "AdminRenew", + "SelfActivate", + "SelfDeactivate", + "SelfExtend", + "SelfRenew" + ], + "x-ms-enum": { + "name": "RequestType", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": true, + "description": "The status of the role eligibility schedule request.", + "enum": [ + "Accepted", + "PendingEvaluation", + "Granted", + "Denied", + "PendingProvisioning", + "Provisioned", + "PendingRevocation", + "Revoked", + "Canceled", + "Failed", + "PendingApprovalProvisioning", + "PendingApproval", + "FailedAsResourceIsLocked", + "PendingAdminDecision", + "AdminApproved", + "AdminDenied", + "TimedOut", + "ProvisioningStarted", + "Invalid", + "PendingScheduleCreation", + "ScheduleCreated", + "PendingExternalProvisioning" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "approvalId": { + "type": "string", + "readOnly": true, + "description": "The approvalId of the role eligibility schedule request." + }, + "scheduleInfo": { + "properties": { + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Start DateTime of the role eligibility schedule." + }, + "expiration": { + "properties": { + "type": { + "type": "string", + "description": "Type of the role eligibility schedule expiration", + "enum": [ + "AfterDuration", + "AfterDateTime", + "NoExpiration" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": true + } + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "End DateTime of the role eligibility schedule." + }, + "duration": { + "type": "string", + "description": "Duration of the role eligibility schedule in TimeSpan." + } + }, + "type": "object", + "description": "Expiration of the role eligibility schedule" + } + }, + "type": "object", + "description": "Schedule info of the role eligibility schedule" + }, + "targetRoleEligibilityScheduleId": { + "type": "string", + "description": "The resultant role eligibility schedule id or the role eligibility schedule id being updated" + }, + "targetRoleEligibilityScheduleInstanceId": { + "type": "string", + "description": "The role eligibility schedule instance id being updated" + }, + "justification": { + "type": "string", + "description": "Justification for the role eligibility" + }, + "ticketInfo": { + "properties": { + "ticketNumber": { + "type": "string", + "description": "Ticket number for the role eligibility" + }, + "ticketSystem": { + "type": "string", + "description": "Ticket system name for the role eligibility" + } + }, + "type": "object", + "description": "Ticket Info of the role eligibility" + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "createdOn": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "DateTime when role eligibility schedule request was created" + }, + "requestorId": { + "type": "string", + "readOnly": true, + "description": "Id of the user who created this request" + }, + "expandedProperties": { + "readOnly": true, + "type": "object", + "description": "Additional properties of principal, scope and role definition", + "$ref": "#/definitions/ExpandedProperties" + } + }, + "required": [ + "roleDefinitionId", + "principalId", + "requestType" + ], + "type": "object", + "description": "Role eligibility schedule request properties with scope." + }, + "RoleEligibilityScheduleRequest": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule request ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule request name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role eligibility schedule request type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleEligibilityScheduleRequestProperties", + "description": "Role eligibility schedule request properties." + } + }, + "type": "object", + "description": "Role Eligibility schedule request" + }, + "RoleEligibilityScheduleRequestListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleEligibilityScheduleRequest" + }, + "description": "Role eligibility schedule request list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role eligibility schedule request list operation result." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + }, + "ExpandedProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "principal": { + "type": "object", + "description": "Details of the principal", + "properties": { + "id": { + "type": "string", + "description": "Id of the principal" + }, + "displayName": { + "type": "string", + "description": "Display name of the principal" + }, + "email": { + "type": "string", + "description": "Email id of the principal" + }, + "type": { + "type": "string", + "description": "Type of the principal" + } + } + } + }, + "type": "object", + "description": "Expanded info of resource, role and principal" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicy.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicy.json new file mode 100644 index 000000000..a41c72596 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicy.json @@ -0,0 +1,384 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleManagementPolicies/{roleManagementPolicyName}": { + "get": { + "tags": [ + "roleManagementPolicies" + ], + "operationId": "RoleManagementPolicies_Get", + "description": "Get the specified role management policy for a resource scope", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleManagementPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role management policy to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role management policy.", + "schema": { + "$ref": "#/definitions/RoleManagementPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetRoleManagementPolicyByName": { + "$ref": "./examples/GetRoleManagementPolicyByName.json" + } + } + }, + "patch": { + "tags": [ + "roleManagementPolicies" + ], + "operationId": "RoleManagementPolicies_Update", + "description": "Update a role management policy", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy to upsert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleManagementPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role management policy to upsert." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleManagementPolicy" + }, + "description": "Parameters for the role management policy." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Ok - Returns the updated policy.", + "schema": { + "$ref": "#/definitions/RoleManagementPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PatchRoleManagementPolicy": { + "$ref": "./examples/PatchRoleManagementPolicy.json" + }, + "PatchPartialRoleManagementPolicy": { + "$ref": "./examples/PatchPartialRoleManagementPolicy.json" + }, + "PatchRoleManagementPolicyToEnablePIMOnlyMode": { + "$ref": "./examples/PatchRoleManagementPolicyToEnablePIMOnlyMode.json" + } + } + }, + "delete": { + "tags": [ + "roleManagementPolicies" + ], + "operationId": "RoleManagementPolicies_Delete", + "description": "Delete a role management policy", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy to upsert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleManagementPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name (guid) of the role management policy to upsert." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Successfully deleted the policy." + }, + "204": { + "description": "NoContent - policy does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteRoleManagementPolicy": { + "$ref": "./examples/DeleteRoleManagementPolicy.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementPolicies": { + "get": { + "tags": [ + "roleManagementPolicies" + ], + "operationId": "RoleManagementPolicies_ListForScope", + "description": "Gets role management policies for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role management policies.", + "schema": { + "$ref": "#/definitions/RoleManagementPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetRoleManagementPolicyByRoleDefinitionFilter": { + "$ref": "./examples/GetRoleManagementPolicyByScope.json" + } + } + } + } + }, + "definitions": { + "RoleManagementPolicyProperties": { + "properties": { + "scope": { + "type": "string", + "description": "The role management policy scope." + }, + "displayName": { + "type": "string", + "description": "The role management policy display name." + }, + "description": { + "type": "string", + "description": "The role management policy description." + }, + "isOrganizationDefault": { + "type": "boolean", + "description": "The role management policy is default policy." + }, + "lastModifiedBy": { + "$ref": "./common-types.json#/definitions/Principal" + }, + "lastModifiedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The last modified date time." + }, + "rules": { + "type": "array", + "items": { + "$ref": "./common-types.json#/definitions/RoleManagementPolicyRule" + }, + "description": "The rule applied to the policy." + }, + "effectiveRules": { + "type": "array", + "items": { + "$ref": "./common-types.json#/definitions/RoleManagementPolicyRule" + }, + "readOnly": true, + "description": "The readonly computed rule applied to the policy." + }, + "policyProperties": { + "readOnly": true, + "type": "object", + "description": "Additional properties of scope", + "$ref": "#/definitions/PolicyProperties" + } + }, + "type": "object", + "description": "Role management policy properties with scope." + }, + "RoleManagementPolicy": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role management policy Id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role management policy name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role management policy type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleManagementPolicyProperties", + "description": "Role management policy properties." + } + }, + "type": "object", + "description": "Role management policy" + }, + "RoleManagementPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleManagementPolicy" + }, + "description": "Role management policy list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role management policy list operation result." + }, + "PolicyProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "readOnly": true, + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + } + }, + "type": "object", + "description": "Expanded info of resource scope" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicyAssignment.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicyAssignment.json new file mode 100644 index 000000000..2abeaadc6 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicyAssignment.json @@ -0,0 +1,393 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2024-02-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleManagementPolicyAssignments/{roleManagementPolicyAssignmentName}": { + "get": { + "tags": [ + "roleManagementPolicyAssignments" + ], + "operationId": "RoleManagementPolicyAssignments_Get", + "description": "Get the specified role management policy assignment for a resource scope", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleManagementPolicyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of format {guid_guid} the role management policy assignment to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role management policy.", + "schema": { + "$ref": "#/definitions/RoleManagementPolicyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleManagementPolicyAssignmentByName.json" + } + } + }, + "put": { + "tags": [ + "roleManagementPolicyAssignments" + ], + "operationId": "RoleManagementPolicyAssignments_Create", + "description": "Create a role management policy assignment", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy assignment to upsert.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleManagementPolicyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of format {guid_guid} the role management policy assignment to upsert." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleManagementPolicyAssignment" + }, + "description": "Parameters for the role management policy assignment." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns the created or updated policy assignment.", + "schema": { + "$ref": "#/definitions/RoleManagementPolicyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PutRoleManagementPolicyAssignment": { + "$ref": "./examples/PutRoleManagementPolicyAssignment.json" + } + } + }, + "delete": { + "tags": [ + "roleManagementPolicyAssignments" + ], + "operationId": "RoleManagementPolicyAssignments_Delete", + "description": "Delete a role management policy assignment", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleManagementPolicyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of format {guid_guid} the role management policy assignment to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Successfully deleted the policy assignment." + }, + "204": { + "description": "NoContent - policy assignment does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteRoleManagementPolicyAssignment": { + "$ref": "./examples/DeleteRoleManagementPolicyAssignment.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleManagementPolicyAssignments": { + "get": { + "tags": [ + "roleManagementPolicyAssignments" + ], + "operationId": "RoleManagementPolicyAssignments_ListForScope", + "description": "Gets role management assignment policies for a resource scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role management policy.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role management policies.", + "schema": { + "$ref": "#/definitions/RoleManagementPolicyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetRoleManagementPolicyAssignmentByScope": { + "$ref": "./examples/GetRoleManagementPolicyAssignmentByScope.json" + } + } + } + } + }, + "definitions": { + "RoleManagementPolicyAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role management policy Id." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role management policy name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role management policy type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleManagementPolicyAssignmentProperties", + "description": "Role management policy properties." + } + }, + "type": "object", + "description": "Role management policy" + }, + "RoleManagementPolicyAssignmentProperties": { + "properties": { + "scope": { + "type": "string", + "description": "The role management policy scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition of management policy assignment." + }, + "policyId": { + "type": "string", + "description": "The policy id role management policy assignment." + }, + "effectiveRules": { + "type": "array", + "items": { + "$ref": "./common-types.json#/definitions/RoleManagementPolicyRule" + }, + "readOnly": true, + "description": "The readonly computed rule applied to the policy." + }, + "policyAssignmentProperties": { + "readOnly": true, + "type": "object", + "description": "Additional properties of scope, role definition and policy", + "$ref": "#/definitions/PolicyAssignmentProperties" + } + }, + "type": "object", + "description": "Role management policy assignment properties with scope." + }, + "RoleManagementPolicyAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleManagementPolicyAssignment" + }, + "description": "Role management policy assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role management policy assignment list operation result." + }, + "PolicyAssignmentProperties": { + "properties": { + "scope": { + "type": "object", + "description": "Details of the resource scope", + "properties": { + "id": { + "type": "string", + "description": "Scope id of the resource" + }, + "displayName": { + "type": "string", + "description": "Display name of the resource" + }, + "type": { + "type": "string", + "description": "Type of the resource" + } + } + }, + "roleDefinition": { + "type": "object", + "description": "Details of role definition", + "properties": { + "id": { + "type": "string", + "description": "Id of the role definition" + }, + "displayName": { + "type": "string", + "description": "Display name of the role definition" + }, + "type": { + "type": "string", + "description": "Type of the role definition" + } + } + }, + "policy": { + "type": "object", + "description": "Details of the policy", + "properties": { + "id": { + "type": "string", + "description": "Id of the policy" + }, + "lastModifiedBy": { + "$ref": "./common-types.json#/definitions/Principal" + }, + "lastModifiedDateTime": { + "type": "string", + "format": "date-time", + "description": "The last modified date time." + } + } + } + }, + "type": "object", + "description": "Expanded info of resource scope, role definition and policy" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object", + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + }, + "type": "object", + "description": "An error response from the service." + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/common-types.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/common-types.json new file mode 100644 index 000000000..8e7935446 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/preview/2024-02-01-preview/common-types.json @@ -0,0 +1,493 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-02-01-preview", + "title": "AuthorizationManagementClient" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "Principal": { + "readOnly": true, + "type": "object", + "description": "The name of the entity last modified it", + "properties": { + "id": { + "type": "string", + "description": "The id of the principal made changes" + }, + "displayName": { + "type": "string", + "description": "The name of the principal made changes" + }, + "type": { + "type": "string", + "description": "Type of principal such as user , group etc" + }, + "email": { + "type": "string", + "description": "Email of principal" + } + } + }, + "RoleManagementPolicyRule": { + "description": "The role management policy rule.", + "type": "object", + "required": [ + "ruleType" + ], + "discriminator": "ruleType", + "properties": { + "id": { + "type": "string", + "description": "The id of the rule." + }, + "ruleType": { + "description": "The type of rule", + "$ref": "#/definitions/RoleManagementPolicyRuleType" + }, + "target": { + "$ref": "#/definitions/RoleManagementPolicyRuleTarget", + "description": "The target of the current rule." + } + } + }, + "RoleManagementPolicyApprovalRule": { + "description": "The role management policy approval rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "setting": { + "$ref": "#/definitions/ApprovalSettings", + "description": "The approval setting" + } + } + }, + "ApprovalSettings": { + "description": "The approval settings.", + "type": "object", + "properties": { + "isApprovalRequired": { + "type": "boolean", + "description": "Determines whether approval is required or not." + }, + "isApprovalRequiredForExtension": { + "type": "boolean", + "description": "Determines whether approval is required for assignment extension." + }, + "isRequestorJustificationRequired": { + "type": "boolean", + "description": "Determine whether requestor justification is required." + }, + "approvalMode": { + "type": "string", + "description": "The type of rule", + "enum": [ + "SingleStage", + "Serial", + "Parallel", + "NoApproval" + ], + "x-ms-enum": { + "name": "ApprovalMode", + "modelAsString": true + } + }, + "approvalStages": { + "type": "array", + "items": { + "$ref": "#/definitions/ApprovalStage" + }, + "x-ms-identifiers": [], + "description": "The approval stages of the request." + } + } + }, + "ApprovalStage": { + "description": "The approval stage.", + "type": "object", + "properties": { + "approvalStageTimeOutInDays": { + "type": "integer", + "format": "int32", + "description": "The time in days when approval request would be timed out" + }, + "isApproverJustificationRequired": { + "type": "boolean", + "description": "Determines whether approver need to provide justification for his decision." + }, + "escalationTimeInMinutes": { + "type": "integer", + "format": "int32", + "description": "The time in minutes when the approval request would be escalated if the primary approver does not approve" + }, + "primaryApprovers": { + "type": "array", + "description": "The primary approver of the request.", + "items": { + "$ref": "#/definitions/UserSet" + } + }, + "isEscalationEnabled": { + "type": "boolean", + "description": "The value determine whether escalation feature is enabled." + }, + "escalationApprovers": { + "type": "array", + "description": "The escalation approver of the request.", + "items": { + "$ref": "#/definitions/UserSet" + } + } + } + }, + "UserSet": { + "description": "The detail of a user.", + "type": "object", + "properties": { + "userType": { + "type": "string", + "description": "The type of user.", + "enum": [ + "User", + "Group" + ], + "x-ms-enum": { + "name": "UserType", + "modelAsString": true + } + }, + "isBackup": { + "type": "boolean", + "description": "The value indicating whether the user is a backup fallback approver" + }, + "id": { + "type": "string", + "description": "The object id of the user." + }, + "description": { + "type": "string", + "description": "The description of the user." + } + } + }, + "UsersOrServicePrincipalSet": { + "description": "The detail of a subject.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of user.", + "enum": [ + "User", + "Group", + "ServicePrincipal" + ], + "x-ms-enum": { + "name": "UserType", + "modelAsString": true + } + }, + "id": { + "type": "string", + "description": "The object id of the entity." + }, + "displayName": { + "type": "string", + "description": "The display Name of the entity." + } + } + }, + "RoleManagementPolicyAuthenticationContextRule": { + "description": "The role management policy authentication context rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "The value indicating if rule is enabled." + }, + "claimValue": { + "type": "string", + "description": "The claim value." + } + } + }, + "RoleManagementPolicyEnablementRule": { + "description": "The role management policy enablement rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "enabledRules": { + "type": "array", + "items": { + "type": "string", + "description": "The type of enablement rule", + "enum": [ + "MultiFactorAuthentication", + "Justification", + "Ticketing" + ], + "x-ms-enum": { + "name": "EnablementRules", + "modelAsString": true + } + }, + "description": "The list of enabled rules." + } + } + }, + "RoleManagementPolicyExpirationRule": { + "description": "The role management policy expiration rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "isExpirationRequired": { + "type": "boolean", + "description": "The value indicating whether expiration is required." + }, + "maximumDuration": { + "type": "string", + "description": "The maximum duration of expiration in timespan." + } + } + }, + "RoleManagementPolicyNotificationRule": { + "description": "The role management policy notification rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "notificationType": { + "type": "string", + "description": "The type of notification.", + "enum": [ + "Email" + ], + "x-ms-enum": { + "name": "NotificationDeliveryMechanism", + "modelAsString": true + } + }, + "notificationLevel": { + "type": "string", + "description": "The notification level.", + "enum": [ + "None", + "Critical", + "All" + ], + "x-ms-enum": { + "name": "NotificationLevel", + "modelAsString": true + } + }, + "recipientType": { + "type": "string", + "description": "The recipient type.", + "enum": [ + "Requestor", + "Approver", + "Admin" + ], + "x-ms-enum": { + "name": "RecipientType", + "modelAsString": true + } + }, + "notificationRecipients": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of notification recipients." + }, + "isDefaultRecipientsEnabled": { + "type": "boolean", + "description": "Determines if the notification will be sent to the recipient type specified in the policy rule." + } + } + }, + "RoleManagementPolicyRuleTarget": { + "description": "The role management policy rule target.", + "type": "object", + "properties": { + "caller": { + "type": "string", + "description": "The caller of the setting." + }, + "operations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The type of operation." + }, + "level": { + "type": "string", + "description": "The assignment level to which rule is applied." + }, + "targetObjects": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of target objects." + }, + "inheritableSettings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of inheritable settings." + }, + "enforcedSettings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of enforced settings." + } + } + }, + "RoleManagementPolicyRuleType": { + "type": "string", + "description": "The type of rule", + "enum": [ + "RoleManagementPolicyApprovalRule", + "RoleManagementPolicyAuthenticationContextRule", + "RoleManagementPolicyEnablementRule", + "RoleManagementPolicyExpirationRule", + "RoleManagementPolicyNotificationRule", + "RoleManagementPolicyPimOnlyModeRule" + ], + "x-ms-enum": { + "name": "RoleManagementPolicyRuleType", + "modelAsString": true + } + }, + "RoleManagementPolicyPimOnlyModeRule": { + "description": "The role management policy PIM only mode rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "pimOnlyModeSettings": { + "$ref": "#/definitions/PIMOnlyModeSettings", + "description": "The PIM Only Mode settings" + } + } + }, + "PIMOnlyModeSettings": { + "description": "The PIM Only Mode settings.", + "type": "object", + "properties": { + "mode": { + "type": "string", + "description": "Determines whether the setting is enabled, disabled or report only.", + "enum": [ + "Disabled", + "Enabled", + "ReportOnly" + ], + "x-ms-enum": { + "name": "PIMOnlyMode", + "modelAsString": true + } + }, + "excludes": { + "type": "array", + "description": "The list of excluded entities that the rule does not apply to.", + "items": { + "$ref": "#/definitions/UsersOrServicePrincipalSet" + } + }, + "excludedAssignmentTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "ServicePrincipalsAsTarget", + "ServicePrincipalsAsRequestor" + ], + "x-ms-enum": { + "name": "ExcludedPrincipalTypes", + "modelAsString": true + } + }, + "description": "The list of excluded assignment types allowed." + } + } + } + }, + "parameters": { + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ResourceTypeParameter": { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type name. For example the type name of a web app is 'sites' (from Microsoft.Web/sites).", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource name.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the operation or resource. Valid scopes are: subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json new file mode 100644 index 000000000..c6e8d27dd --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json @@ -0,0 +1,131 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2015-07-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/classicAdministrators": { + "get": { + "tags": [ + "ClassicAdministrators" + ], + "operationId": "ClassicAdministrators_List", + "description": "Gets service administrator, account administrator, and co-administrators for the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of administrators.", + "schema": { + "$ref": "#/definitions/ClassicAdministratorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List classic administrators": { + "$ref": "./examples/GetClassicAdministrators.json" + } + } + } + } + }, + "definitions": { + "ClassicAdministratorProperties": { + "properties": { + "emailAddress": { + "type": "string", + "description": "The email address of the administrator." + }, + "role": { + "type": "string", + "description": "The role of the administrator." + } + }, + "description": "Classic Administrator properties." + }, + "ClassicAdministrator": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the administrator." + }, + "name": { + "type": "string", + "description": "The name of the administrator." + }, + "type": { + "type": "string", + "description": "The type of the administrator." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClassicAdministratorProperties", + "description": "Properties for the classic administrator." + } + }, + "description": "Classic Administrators" + }, + "ClassicAdministratorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClassicAdministrator" + }, + "description": "An array of administrators." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "ClassicAdministrator list result information." + } + }, + "parameters": {} +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json new file mode 100644 index 000000000..7c42d3ec8 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json @@ -0,0 +1,77 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2015-07-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Authorization/elevateAccess": { + "post": { + "tags": [ + "ElevateAccess" + ], + "operationId": "GlobalAdministrator_ElevateAccess", + "description": "Elevates access for a Global Administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an HttpResponseMessage with HttpStatusCode 200." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-azure-rbac-permissions-required": { + "actions": "Microsoft.Authorization/elevateAccess/action", + "dataActions": "", + "rolesWithThesePermissions": [ + "Owner" + ], + "moreInfoLink": "[Elevate access to manage all Azure subscriptions and management groups](https://docs.microsoft.com/azure/role-based-access-control/elevate-access-global-admin)" + }, + "x-ms-examples": { + "Elevate access global administrator": { + "$ref": "./examples/ElevateAccess.json" + } + } + } + } + }, + "parameters": {} +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json new file mode 100644 index 000000000..43f2700bb --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json @@ -0,0 +1,235 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2015-07-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Authorization/providerOperations/{resourceProviderNamespace}": { + "get": { + "tags": [ + "ProviderOperationsMetadata" + ], + "operationId": "ProviderOperationsMetadata_Get", + "description": "Gets provider operations metadata for the specified resource provider.", + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "default": "resourceTypes", + "description": "Specifies whether to expand the values." + } + ], + "responses": { + "200": { + "description": "OK - Returns the operations metadata.", + "schema": { + "$ref": "#/definitions/ProviderOperationsMetadata" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get provider operations metadata for resource provider": { + "$ref": "./examples/GetProviderOperationsRP.json" + } + } + } + }, + "/providers/Microsoft.Authorization/providerOperations": { + "get": { + "tags": [ + "ProviderOperationsMetadata" + ], + "operationId": "ProviderOperationsMetadata_List", + "description": "Gets provider operations metadata for all resource providers.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "default": "resourceTypes", + "description": "Specifies whether to expand the values." + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of the operations metadata.", + "schema": { + "$ref": "#/definitions/ProviderOperationsMetadataListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List provider operations metadata for all resource providers": { + "$ref": "./examples/GetAllProviderOperations.json" + } + } + } + } + }, + "definitions": { + "ResourceType": { + "properties": { + "name": { + "type": "string", + "description": "The resource type name." + }, + "displayName": { + "type": "string", + "description": "The resource type display name." + }, + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperation" + }, + "x-ms-identifiers": [], + "description": "The resource type operations." + } + }, + "description": "Resource Type" + }, + "ProviderOperation": { + "properties": { + "name": { + "type": "string", + "description": "The operation name." + }, + "displayName": { + "type": "string", + "description": "The operation display name." + }, + "description": { + "type": "string", + "description": "The operation description." + }, + "origin": { + "type": "string", + "description": "The operation origin." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The operation properties." + } + }, + "description": "Operation" + }, + "ProviderOperationsMetadata": { + "properties": { + "id": { + "type": "string", + "description": "The provider id." + }, + "name": { + "type": "string", + "description": "The provider name." + }, + "type": { + "type": "string", + "description": "The provider type." + }, + "displayName": { + "type": "string", + "description": "The provider display name." + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceType" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The provider resource types" + }, + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperation" + }, + "x-ms-identifiers": [], + "description": "The provider operations." + } + }, + "description": "Provider Operations metadata" + }, + "ProviderOperationsMetadataListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperationsMetadata" + }, + "description": "The list of providers." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Provider operations metadata list" + } + }, + "parameters": {} +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json new file mode 100644 index 000000000..91983c7fd --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json @@ -0,0 +1,648 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2015-07-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResource", + "description": "Gets role assignments for a resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get role assignments for." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "List role assignments for resource": { + "$ref": "./examples/GetRoleAssignmentsForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResourceGroup", + "description": "Gets role assignments for a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "List role assignments for resource group": { + "$ref": "./examples/GetRoleAssignmentsForResourceGroup.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "204": { + "description": "Role assignment already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role assignment by name": { + "$ref": "./examples/DeleteRoleAssignmentByName.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Creates a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "A GUID for the role assignment to create. The name must be unique and different for each role assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create role assignment": { + "$ref": "./examples/PutRoleAssignment.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get the specified role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role assignment by name": { + "$ref": "./examples/GetRoleAssignmentByName.json" + } + } + } + }, + "/{roleAssignmentId}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteById", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the role assignment, including the scope, resource name and resource type. Use the format, /{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}. Example: /subscriptions/{subId}/resourcegroups/{rgname}//providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "204": { + "description": "Role assignment already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role assignment by ID": { + "$ref": "./examples/DeleteRoleAssignmentById.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateById", + "description": "Creates a role assignment by ID.", + "parameters": [ + { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the role assignment, including the scope, resource name and resource type. Use the format, /{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}. Example: /subscriptions/{subId}/resourcegroups/{rgname}//providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}.", + "x-ms-skip-url-encoding": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create role assignment by ID": { + "$ref": "./examples/PutRoleAssignmentById.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetById", + "description": "Gets a role assignment by ID.", + "parameters": [ + { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the role assignment, including the scope, resource name and resource type. Use the format, /{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}. Example: /subscriptions/{subId}/resourcegroups/{rgname}//providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role assignment by ID": { + "$ref": "./examples/GetRoleAssignmentById.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_List", + "description": "Gets all role assignments for the subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "List role assignments for subscription": { + "$ref": "./examples/GetAllRoleAssignments.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "Gets role assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "List role assignments for scope": { + "$ref": "./examples/GetRoleAssignmentByScope.json" + } + } + } + } + }, + "definitions": { + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentPropertiesWithScope": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + } + }, + "description": "Role assignment properties with scope." + }, + "RoleAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID used in the role assignment." + }, + "principalId": { + "type": "string", + "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + } + }, + "parameters": {} +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json new file mode 100644 index 000000000..e2399df1f --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json @@ -0,0 +1,519 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2015-07-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "operationId": "Permissions_ListForResourceGroup", + "description": "Gets all permissions the caller has for a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of permissions.", + "schema": { + "$ref": "#/definitions/PermissionGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List permissions for resource group": { + "$ref": "./examples/GetPermissions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "operationId": "Permissions_ListForResource", + "description": "Gets all permissions the caller has for a resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get the permissions for." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of permissions.", + "schema": { + "$ref": "#/definitions/PermissionGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List permissions for resource": { + "$ref": "./examples/GetResourcePermissions.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}": { + "delete": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Delete", + "description": "Deletes a role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "204": { + "description": "Role definition already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role definition": { + "$ref": "./examples/DeleteRoleDefinition.json" + } + } + }, + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Get", + "description": "Get role definition by name (GUID).", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role definition by name": { + "$ref": "./examples/GetRoleDefinitionByName.json" + } + } + }, + "put": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_CreateOrUpdate", + "description": "Creates or updates a role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition." + }, + { + "name": "roleDefinition", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "The values for the role definition." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create role definition": { + "$ref": "./examples/PutRoleDefinition.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_List", + "description": "Get all role definitions that are applicable at scope and above.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role definitions.", + "schema": { + "$ref": "#/definitions/RoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleDefinitionFilter", + "x-ms-examples": { + "List role definitions for scope": { + "$ref": "./examples/GetRoleDefinitionAtScope.json" + } + } + } + }, + "/{roleDefinitionId}": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_GetById", + "description": "Gets a role definition by ID.", + "parameters": [ + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified role definition ID. Use the format, /subscriptions/{guid}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for subscription level role definitions, or /providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for tenant level role definitions.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role definition by ID": { + "$ref": "./examples/GetRoleDefinitionById.json" + } + } + } + } + }, + "definitions": { + "RoleDefinitionFilter": { + "properties": { + "roleName": { + "type": "string", + "description": "Returns role definition with the specific name." + } + }, + "description": "Role Definitions filter" + }, + "RoleDefinitionProperties": { + "properties": { + "roleName": { + "type": "string", + "description": "The role name." + }, + "description": { + "type": "string", + "description": "The role definition description." + }, + "type": { + "type": "string", + "description": "The role type.", + "x-ms-client-name": "roleType" + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "x-ms-identifiers": [], + "description": "Role definition permissions." + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Role definition assignable scopes." + } + }, + "description": "Role definition properties." + }, + "RoleDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role definition name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role definition type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "description": "Role definition." + }, + "RoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "Role definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role definition list operation result." + }, + "PermissionGetResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "x-ms-identifiers": [], + "description": "An array of permissions." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Permissions information." + }, + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + } + }, + "description": "Role definition permissions." + } + }, + "parameters": {} +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-DenyAssignmentCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-DenyAssignmentCalls.json new file mode 100644 index 000000000..9829252c1 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-DenyAssignmentCalls.json @@ -0,0 +1,538 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2022-04-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to get deny assignments. A deny assignment describes the set of actions on resources that are denied for Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/denyAssignments": { + "get": { + "tags": [ + "DenyAssignments" + ], + "operationId": "DenyAssignments_ListForResource", + "description": "Gets deny assignments for a resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get deny assignments for." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deny assignments.", + "schema": { + "$ref": "#/definitions/DenyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DenyAssignmentFilter", + "x-ms-examples": { + "List deny assignments for resource": { + "$ref": "./examples/GetDenyAssignmentsForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/denyAssignments": { + "get": { + "tags": [ + "DenyAssignments" + ], + "operationId": "DenyAssignments_ListForResourceGroup", + "description": "Gets deny assignments for a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deny assignments.", + "schema": { + "$ref": "#/definitions/DenyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DenyAssignmentFilter", + "x-ms-examples": { + "List deny assignments for resource group": { + "$ref": "./examples/GetDenyAssignmentsForResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/denyAssignments": { + "get": { + "tags": [ + "DenyAssignments" + ], + "operationId": "DenyAssignments_List", + "description": "Gets all deny assignments for the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deny assignments.", + "schema": { + "$ref": "#/definitions/DenyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DenyAssignmentFilter", + "x-ms-examples": { + "List deny assignments for subscription": { + "$ref": "./examples/GetAllDenyAssignments.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/denyAssignments/{denyAssignmentId}": { + "get": { + "tags": [ + "DenyAssignments" + ], + "operationId": "DenyAssignments_Get", + "description": "Get the specified deny assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the deny assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "denyAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the deny assignment to get." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deny assignment.", + "schema": { + "$ref": "#/definitions/DenyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get deny assignment by name": { + "$ref": "./examples/GetDenyAssignmentByNameId.json" + } + } + } + }, + "/{denyAssignmentId}": { + "get": { + "tags": [ + "DenyAssignments" + ], + "operationId": "DenyAssignments_GetById", + "description": "Gets a deny assignment by ID.", + "parameters": [ + { + "name": "denyAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified deny assignment ID. For example, use the format, /subscriptions/{guid}/providers/Microsoft.Authorization/denyAssignments/{denyAssignmentId} for subscription level deny assignments, or /providers/Microsoft.Authorization/denyAssignments/{denyAssignmentId} for tenant level deny assignments.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the deny assignment.", + "schema": { + "$ref": "#/definitions/DenyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get deny assignment by ID": { + "$ref": "./examples/GetDenyAssignmentById.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/denyAssignments": { + "get": { + "tags": [ + "DenyAssignments" + ], + "operationId": "DenyAssignments_ListForScope", + "description": "Gets deny assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the deny assignments.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deny assignments.", + "schema": { + "$ref": "#/definitions/DenyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DenyAssignmentFilter", + "x-ms-examples": { + "List deny assignments for scope": { + "$ref": "./examples/GetDenyAssignmentByScope.json" + } + } + } + } + }, + "definitions": { + "DenyAssignmentFilter": { + "properties": { + "denyAssignmentName": { + "type": "string", + "description": "Return deny assignment with specified name." + }, + "principalId": { + "type": "string", + "description": "Return all deny assignments where the specified principal is listed in the principals list of deny assignments." + }, + "gdprExportPrincipalId": { + "type": "string", + "description": "Return all deny assignments where the specified principal is listed either in the principals list or exclude principals list of deny assignments." + } + }, + "type": "object", + "description": "Deny Assignments filter" + }, + "DenyAssignmentProperties": { + "properties": { + "denyAssignmentName": { + "type": "string", + "description": "The display name of the deny assignment." + }, + "description": { + "type": "string", + "description": "The description of the deny assignment." + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/DenyAssignmentPermission" + }, + "x-ms-identifiers": [], + "description": "An array of permissions that are denied by the deny assignment." + }, + "scope": { + "type": "string", + "description": "The deny assignment scope." + }, + "doNotApplyToChildScopes": { + "type": "boolean", + "description": "Determines if the deny assignment applies to child scopes. Default value is false." + }, + "principals": { + "type": "array", + "items": { + "$ref": "./common-types.json#/definitions/Principal" + }, + "description": "Array of principals to which the deny assignment applies." + }, + "excludePrincipals": { + "type": "array", + "items": { + "$ref": "./common-types.json#/definitions/Principal" + }, + "description": "Array of principals to which the deny assignment does not apply." + }, + "isSystemProtected": { + "type": "boolean", + "description": "Specifies whether this deny assignment was created by Azure and cannot be edited or deleted." + }, + "condition": { + "type": "string", + "description": "The conditions on the deny assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition." + }, + "createdOn": { + "readOnly": true, + "type": "string", + "description": "Time it was created", + "format": "date-time" + }, + "updatedOn": { + "readOnly": true, + "type": "string", + "description": "Time it was updated", + "format": "date-time" + }, + "createdBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who created the assignment" + }, + "updatedBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who updated the assignment" + } + }, + "type": "object", + "description": "Deny assignment properties." + }, + "DenyAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The deny assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The deny assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The deny assignment type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DenyAssignmentProperties", + "description": "Deny assignment properties." + } + }, + "type": "object", + "description": "Deny Assignment" + }, + "DenyAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DenyAssignment" + }, + "description": "Deny assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Deny assignment list operation result." + }, + "DenyAssignmentPermission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Actions to which the deny assignment does not grant access." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Actions to exclude from that the deny assignment does not grant access." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Data actions to which the deny assignment does not grant access." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Data actions to exclude from that the deny assignment does not grant access." + }, + "condition": { + "type": "string", + "description": "The conditions on the Deny assignment permission. This limits the resources it applies to." + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition." + } + }, + "type": "object", + "description": "Deny assignment permissions." + } + }, + "parameters": { + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all deny assignments at or above the scope. Use $filter=denyAssignmentName eq '{name}' to search deny assignments by name at specified scope. Use $filter=principalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. Use $filter=gdprExportPrincipalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. This filter is different from the principalId filter as it returns not only those deny assignments that contain the specified principal is the Principals list but also those deny assignments that contain the specified principal is the ExcludePrincipals list. Additionally, when gdprExportPrincipalId filter is used, only the deny assignment name and description properties are returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-ProviderOperationsCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-ProviderOperationsCalls.json new file mode 100644 index 000000000..233a36b80 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-ProviderOperationsCalls.json @@ -0,0 +1,249 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2022-04-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These calls handle provider operations." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Authorization/providerOperations/{resourceProviderNamespace}": { + "get": { + "tags": [ + "ProviderOperationsMetadata" + ], + "operationId": "ProviderOperationsMetadata_Get", + "description": "Gets provider operations metadata for the specified resource provider.", + "parameters": [ + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "default": "resourceTypes", + "description": "Specifies whether to expand the values." + } + ], + "responses": { + "200": { + "description": "OK - Returns the operations metadata.", + "schema": { + "$ref": "#/definitions/ProviderOperationsMetadata" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List provider operations metadata for resource provider": { + "$ref": "./examples/GetProviderOperationsRP.json" + } + } + } + }, + "/providers/Microsoft.Authorization/providerOperations": { + "get": { + "tags": [ + "ProviderOperationsMetadata" + ], + "operationId": "ProviderOperationsMetadata_List", + "description": "Gets provider operations metadata for all resource providers.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "default": "resourceTypes", + "description": "Specifies whether to expand the values." + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of the operations metadata.", + "schema": { + "$ref": "#/definitions/ProviderOperationsMetadataListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List provider operations metadata for all resource providers": { + "$ref": "./examples/GetAllProviderOperations.json" + } + } + } + } + }, + "definitions": { + "ResourceType": { + "properties": { + "name": { + "type": "string", + "description": "The resource type name." + }, + "displayName": { + "type": "string", + "description": "The resource type display name." + }, + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperation" + }, + "x-ms-identifiers": [], + "description": "The resource type operations." + } + }, + "type": "object", + "description": "Resource Type" + }, + "ProviderOperation": { + "properties": { + "name": { + "type": "string", + "description": "The operation name." + }, + "displayName": { + "type": "string", + "description": "The operation display name." + }, + "description": { + "type": "string", + "description": "The operation description." + }, + "origin": { + "type": "string", + "description": "The operation origin." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The operation properties." + }, + "isDataAction": { + "type": "boolean", + "description": "The dataAction flag to specify the operation type." + } + }, + "type": "object", + "description": "Operation" + }, + "ProviderOperationsMetadata": { + "properties": { + "id": { + "type": "string", + "description": "The provider id." + }, + "name": { + "type": "string", + "description": "The provider name." + }, + "type": { + "type": "string", + "description": "The provider type." + }, + "displayName": { + "type": "string", + "description": "The provider display name." + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceType" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The provider resource types" + }, + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperation" + }, + "x-ms-identifiers": [], + "description": "The provider operations." + } + }, + "type": "object", + "description": "Provider Operations metadata" + }, + "ProviderOperationsMetadataListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperationsMetadata" + }, + "description": "The list of providers." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Provider operations metadata list" + } + }, + "parameters": { + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-RoleAssignmentsCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-RoleAssignmentsCalls.json new file mode 100644 index 000000000..872d7bf2b --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-RoleAssignmentsCalls.json @@ -0,0 +1,734 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2022-04-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForSubscription", + "description": "List all role assignments that apply to a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List role assignments for subscription": { + "$ref": "./examples/RoleAssignments_ListForSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResourceGroup", + "description": "List all role assignments that apply to a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List role assignments for resource group": { + "$ref": "./examples/RoleAssignments_ListForResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResource", + "description": "List all role assignments that apply to a resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceTypeParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List role assignments for a resource": { + "$ref": "./examples/RoleAssignments_ListForResource.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get a role assignment by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role assignment by scope and name": { + "$ref": "./examples/RoleAssignments_Get.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Create or update a role assignment by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentCreateParameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create role assignment for subscription": { + "$ref": "./examples/RoleAssignments_CreateForSubscription.json" + }, + "Create role assignment for resource group": { + "$ref": "./examples/RoleAssignments_CreateForResourceGroup.json" + }, + "Create role assignment for resource": { + "$ref": "./examples/RoleAssignments_CreateForResource.json" + } + } + }, + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Delete a role assignment by scope and name.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the deleted role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "204": { + "description": "Role assignment was already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role assignment": { + "$ref": "./examples/RoleAssignments_Delete.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "List all role assignments that apply to a scope.", + "parameters": [ + { + "$ref": "./common-types.json#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentFilterParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + }, + { + "$ref": "#/parameters/PaginationSkipToken" + } + ], + "responses": { + "200": { + "description": "Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "List role assignments for scope": { + "$ref": "./examples/RoleAssignments_ListForScope.json" + } + } + } + }, + "/{roleAssignmentId}": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetById", + "description": "Get a role assignment by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role assignment by ID": { + "$ref": "./examples/RoleAssignments_GetById.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateById", + "description": "Create or update a role assignment by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleAssignmentCreateParameters" + } + ], + "responses": { + "201": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "200": { + "description": "Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update role assignment by ID": { + "$ref": "./examples/RoleAssignments_CreateById.json" + } + } + }, + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteById", + "description": "Delete a role assignment by ID.", + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TenantIdQueryParameter" + } + ], + "responses": { + "200": { + "description": "Returns the deleted role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "204": { + "description": "Role assignment already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role assignment by ID": { + "$ref": "./examples/RoleAssignments_DeleteById.json" + } + } + } + } + }, + "definitions": { + "ValidationResponseErrorInfo": { + "type": "object", + "description": "Failed validation result details", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "Error code indicating why validation failed" + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Message indicating why validation failed" + } + } + }, + "ValidationResponse": { + "type": "object", + "description": "Validation response", + "properties": { + "isValid": { + "readOnly": true, + "type": "boolean", + "description": "Whether or not validation succeeded" + }, + "errorInfo": { + "description": "Failed validation result details", + "$ref": "#/definitions/ValidationResponseErrorInfo" + } + } + }, + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + } + }, + "type": "object", + "description": "Role Assignments filter" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The skipToken to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "scope": { + "readOnly": true, + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "ForeignGroup", + "Device" + ], + "default": "User", + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "Description of role assignment" + }, + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently the only accepted value is '2.0'" + }, + "createdOn": { + "readOnly": true, + "type": "string", + "description": "Time it was created", + "format": "date-time" + }, + "updatedOn": { + "readOnly": true, + "type": "string", + "description": "Time it was updated", + "format": "date-time" + }, + "createdBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who created the assignment" + }, + "updatedBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who updated the assignment" + }, + "delegatedManagedIdentityResourceId": { + "type": "string", + "description": "Id of the delegated managed identity resource" + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "type": "object", + "description": "Role assignment properties." + }, + "RoleAssignment": { + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "type": "object", + "description": "Role Assignments" + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "type": "object", + "description": "Role assignment create parameters." + } + }, + "parameters": { + "RoleAssignmentFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "RoleAssignmentNameParameter": { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment. It can be any valid GUID.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "RoleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the role assignment including scope, resource name, and resource type. Format: /{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}. Example: /subscriptions//resourcegroups//providers/Microsoft.Authorization/roleAssignments/", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "RoleAssignmentCreateParameters": { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment.", + "x-ms-parameter-location": "method" + }, + "TenantIdQueryParameter": { + "name": "tenantId", + "in": "query", + "required": false, + "type": "string", + "description": "Tenant ID for cross-tenant request", + "x-ms-parameter-location": "method" + }, + "PaginationSkipToken": { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string", + "description": "The skipToken to apply on the operation. Use $skipToken={skiptoken} to return paged role assignments following the skipToken passed. Only supported on provider level calls.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-RoleDefinitionsCalls.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-RoleDefinitionsCalls.json new file mode 100644 index 000000000..cecfbd0b1 --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/authorization-RoleDefinitionsCalls.json @@ -0,0 +1,573 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2022-04-01", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations allow you to manage role definitions. A role definition describes the set of actions that can be performed on resources." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "operationId": "Permissions_ListForResourceGroup", + "description": "Gets all permissions the caller has for a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of permissions.", + "schema": { + "$ref": "#/definitions/PermissionGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List permissions for resource group": { + "$ref": "./examples/GetPermissions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "operationId": "Permissions_ListForResource", + "description": "Gets all permissions the caller has for a resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./common-types.json#/parameters/ResourceProviderNamespaceParameter" + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "pattern": ".+", + "type": "string", + "description": "The name of the resource to get the permissions for." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of permissions.", + "schema": { + "$ref": "#/definitions/PermissionGetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List permissions for resource": { + "$ref": "./examples/GetResourcePermissions.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}": { + "delete": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Delete", + "description": "Deletes a role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "204": { + "description": "Role definition already deleted or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete role definition": { + "$ref": "./examples/DeleteRoleDefinition.json" + } + } + }, + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Get", + "description": "Get role definition by name (GUID).", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role definition by name": { + "$ref": "./examples/GetRoleDefinitionByName.json" + } + } + }, + "put": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_CreateOrUpdate", + "description": "Creates or updates a role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition." + }, + { + "name": "roleDefinition", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "The values for the role definition." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create role definition": { + "$ref": "./examples/PutRoleDefinition.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_List", + "description": "Get all role definitions that are applicable at scope and above.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role definitions.", + "schema": { + "$ref": "#/definitions/RoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleDefinitionFilter", + "x-ms-examples": { + "List role definitions for scope": { + "$ref": "./examples/GetRoleDefinitionAtScope.json" + } + } + } + } + }, + "x-ms-paths": { + "/{roleId}?disambiguation_dummy": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_GetById", + "description": "Gets a role definition by ID.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified role definition ID. Use the format, /subscriptions/{guid}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for subscription level role definitions, or /providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for tenant level role definitions.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get role definition by ID": { + "$ref": "./examples/GetRoleDefinitionById.json" + } + } + } + } + }, + "definitions": { + "RoleDefinitionFilter": { + "properties": { + "roleName": { + "type": "string", + "description": "Returns role definition with the specific name." + }, + "type": { + "type": "string", + "description": "Returns role definition with the specific type." + } + }, + "type": "object", + "description": "Role Definitions filter" + }, + "RoleDefinitionProperties": { + "properties": { + "roleName": { + "type": "string", + "description": "The role name." + }, + "description": { + "type": "string", + "description": "The role definition description." + }, + "type": { + "type": "string", + "description": "The role type.", + "x-ms-client-name": "roleType" + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "x-ms-identifiers": [], + "description": "Role definition permissions." + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Role definition assignable scopes." + }, + "createdOn": { + "readOnly": true, + "type": "string", + "description": "Time it was created", + "format": "date-time" + }, + "updatedOn": { + "readOnly": true, + "type": "string", + "description": "Time it was updated", + "format": "date-time" + }, + "createdBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who created the assignment" + }, + "updatedBy": { + "readOnly": true, + "type": "string", + "description": "Id of the user who updated the assignment" + } + }, + "type": "object", + "description": "Role definition properties." + }, + "RoleDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role definition name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role definition type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "type": "object", + "description": "Role definition." + }, + "RoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "Role definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Role definition list operation result." + }, + "PermissionGetResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "x-ms-identifiers": [], + "description": "An array of permissions." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "type": "object", + "description": "Permissions information." + }, + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "type": "object", + "description": "Role definition permissions." + } + }, + "parameters": { + "FilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all deny assignments at or above the scope. Use $filter=denyAssignmentName eq '{name}' to search deny assignments by name at specified scope. Use $filter=principalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. Use $filter=gdprExportPrincipalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. This filter is different from the principalId filter as it returns not only those deny assignments that contain the specified principal is the Principals list but also those deny assignments that contain the specified principal is the ExcludePrincipals list. Additionally, when gdprExportPrincipalId filter is used, only the deny assignment name and description properties are returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/common-types.json b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/common-types.json new file mode 100644 index 000000000..1e4cc930b --- /dev/null +++ b/swagger-specs/authorization/resource-manager/Microsoft.Authorization/stable/2022-04-01/common-types.json @@ -0,0 +1,443 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-04-01", + "title": "AuthorizationManagementClient" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "type": "object", + "description": "Role definition permissions." + }, + "Principal": { + "readOnly": true, + "type": "object", + "description": "The name of the entity last modified it", + "properties": { + "id": { + "type": "string", + "description": "The id of the principal made changes" + }, + "displayName": { + "type": "string", + "description": "The name of the principal made changes" + }, + "type": { + "type": "string", + "description": "Type of principal such as user , group etc" + }, + "email": { + "type": "string", + "description": "Email of principal" + } + } + }, + "RoleManagementPolicyRule": { + "description": "The role management policy rule.", + "type": "object", + "required": [ + "ruleType" + ], + "discriminator": "ruleType", + "properties": { + "id": { + "type": "string", + "description": "The id of the rule." + }, + "ruleType": { + "description": "The type of rule", + "$ref": "#/definitions/RoleManagementPolicyRuleType" + }, + "target": { + "$ref": "#/definitions/RoleManagementPolicyRuleTarget", + "description": "The target of the current rule." + } + } + }, + "RoleManagementPolicyApprovalRule": { + "description": "The role management policy approval rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "setting": { + "$ref": "#/definitions/ApprovalSettings", + "description": "The approval setting" + } + } + }, + "ApprovalSettings": { + "description": "The approval settings.", + "type": "object", + "properties": { + "isApprovalRequired": { + "type": "boolean", + "description": "Determines whether approval is required or not." + }, + "isApprovalRequiredForExtension": { + "type": "boolean", + "description": "Determines whether approval is required for assignment extension." + }, + "isRequestorJustificationRequired": { + "type": "boolean", + "description": "Determine whether requestor justification is required." + }, + "approvalMode": { + "type": "string", + "description": "The type of rule", + "enum": [ + "SingleStage", + "Serial", + "Parallel", + "NoApproval" + ], + "x-ms-enum": { + "name": "ApprovalMode", + "modelAsString": true + } + }, + "approvalStages": { + "type": "array", + "items": { + "$ref": "#/definitions/ApprovalStage" + }, + "x-ms-identifiers": [], + "description": "The approval stages of the request." + } + } + }, + "ApprovalStage": { + "description": "The approval stage.", + "type": "object", + "properties": { + "approvalStageTimeOutInDays": { + "type": "integer", + "format": "int32", + "description": "The time in days when approval request would be timed out" + }, + "isApproverJustificationRequired": { + "type": "boolean", + "description": "Determines whether approver need to provide justification for his decision." + }, + "escalationTimeInMinutes": { + "type": "integer", + "format": "int32", + "description": "The time in minutes when the approval request would be escalated if the primary approver does not approve" + }, + "primaryApprovers": { + "type": "array", + "description": "The primary approver of the request.", + "items": { + "$ref": "#/definitions/UserSet" + } + }, + "isEscalationEnabled": { + "type": "boolean", + "description": "The value determine whether escalation feature is enabled." + }, + "escalationApprovers": { + "type": "array", + "description": "The escalation approver of the request.", + "items": { + "$ref": "#/definitions/UserSet" + } + } + } + }, + "UserSet": { + "description": "The detail of a user.", + "type": "object", + "properties": { + "userType": { + "type": "string", + "description": "The type of user.", + "enum": [ + "User", + "Group" + ], + "x-ms-enum": { + "name": "UserType", + "modelAsString": true + } + }, + "isBackup": { + "type": "boolean", + "description": "The value indicating whether the user is a backup fallback approver" + }, + "id": { + "type": "string", + "description": "The object id of the user." + }, + "description": { + "type": "string", + "description": "The description of the user." + } + } + }, + "RoleManagementPolicyAuthenticationContextRule": { + "description": "The role management policy authentication context rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "The value indicating if rule is enabled." + }, + "claimValue": { + "type": "string", + "description": "The claim value." + } + } + }, + "RoleManagementPolicyEnablementRule": { + "description": "The role management policy enablement rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "enabledRules": { + "type": "array", + "items": { + "type": "string", + "description": "The type of enablement rule", + "enum": [ + "MultiFactorAuthentication", + "Justification", + "Ticketing" + ], + "x-ms-enum": { + "name": "EnablementRules", + "modelAsString": true + } + }, + "description": "The list of enabled rules." + } + } + }, + "RoleManagementPolicyExpirationRule": { + "description": "The role management policy expiration rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "isExpirationRequired": { + "type": "boolean", + "description": "The value indicating whether expiration is required." + }, + "maximumDuration": { + "type": "string", + "description": "The maximum duration of expiration in timespan." + } + } + }, + "RoleManagementPolicyNotificationRule": { + "description": "The role management policy notification rule.", + "allOf": [ + { + "$ref": "#/definitions/RoleManagementPolicyRule" + } + ], + "type": "object", + "properties": { + "notificationType": { + "type": "string", + "description": "The type of notification.", + "enum": [ + "Email" + ], + "x-ms-enum": { + "name": "NotificationDeliveryMechanism", + "modelAsString": true + } + }, + "notificationLevel": { + "type": "string", + "description": "The notification level.", + "enum": [ + "None", + "Critical", + "All" + ], + "x-ms-enum": { + "name": "NotificationLevel", + "modelAsString": true + } + }, + "recipientType": { + "type": "string", + "description": "The recipient type.", + "enum": [ + "Requestor", + "Approver", + "Admin" + ], + "x-ms-enum": { + "name": "RecipientType", + "modelAsString": true + } + }, + "notificationRecipients": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of notification recipients." + }, + "isDefaultRecipientsEnabled": { + "type": "boolean", + "description": "Determines if the notification will be sent to the recipient type specified in the policy rule." + } + } + }, + "RoleManagementPolicyRuleTarget": { + "description": "The role management policy rule target.", + "type": "object", + "properties": { + "caller": { + "type": "string", + "description": "The caller of the setting." + }, + "operations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The type of operation." + }, + "level": { + "type": "string", + "description": "The assignment level to which rule is applied." + }, + "targetObjects": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of target objects." + }, + "inheritableSettings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of inheritable settings." + }, + "enforcedSettings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of enforced settings." + } + } + }, + "RoleManagementPolicyRuleType": { + "type": "string", + "description": "The type of rule", + "enum": [ + "RoleManagementPolicyApprovalRule", + "RoleManagementPolicyAuthenticationContextRule", + "RoleManagementPolicyEnablementRule", + "RoleManagementPolicyExpirationRule", + "RoleManagementPolicyNotificationRule" + ], + "x-ms-enum": { + "name": "RoleManagementPolicyRuleType", + "modelAsString": true + } + } + }, + "parameters": { + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ResourceTypeParameter": { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type name. For example the type name of a web app is 'sites' (from Microsoft.Web/sites).", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource name.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the operation or resource. Valid scopes are: subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/authorization/resource-manager/api-set.json b/swagger-specs/authorization/resource-manager/api-set.json index 790c649b1..054733a33 100644 --- a/swagger-specs/authorization/resource-manager/api-set.json +++ b/swagger-specs/authorization/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Authorization/preview/2022-05-01-preview/authorization-RoleDefinitionsCalls.json", "Microsoft.Authorization/preview/2022-05-01-preview/common-types.json"], "name": "package-2022-05-01-preview-only"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json", "Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json", "Microsoft.Authorization/stable/2022-04-01/authorization-DenyAssignmentCalls.json", "Microsoft.Authorization/stable/2022-04-01/authorization-ProviderOperationsCalls.json", "Microsoft.Authorization/stable/2022-04-01/authorization-RoleAssignmentsCalls.json", "Microsoft.Authorization/preview/2022-05-01-preview/authorization-RoleDefinitionsCalls.json", "Microsoft.Authorization/preview/2024-02-01-preview/common-types.json", "Microsoft.Authorization/preview/2021-12-01-preview/authorization-AccessReviewCalls.json", "Microsoft.Authorization/preview/2024-02-01-preview/EligibleChildResources.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentSchedule.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleInstance.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleAssignmentScheduleRequest.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilitySchedule.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleInstance.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleEligibilityScheduleRequest.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicy.json", "Microsoft.Authorization/preview/2024-02-01-preview/RoleManagementPolicyAssignment.json", "Microsoft.Authorization/preview/2022-08-01-preview/RoleManagementAlerts.json"], "name": "package-2024-02-01-preview"} \ No newline at end of file diff --git a/swagger-specs/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json b/swagger-specs/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json index 905787886..6096b7408 100644 --- a/swagger-specs/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json +++ b/swagger-specs/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json @@ -186,7 +186,7 @@ "description": "The name of the Compute Fleet", "required": true, "type": "string", - "pattern": "^[^_\\W][\\w-._]{0,79}(?
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)." }, "certificateStore": { @@ -2291,6 +2294,7 @@ "properties": { "uri": { "type": "string", + "format": "uri", "description": "Specifies the virtual hard disk's uri." } } @@ -2996,6 +3000,7 @@ }, "certificateUrl": { "type": "string", + "format": "uri", "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:

{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)." } } diff --git a/swagger-specs/batch/data-plane/Microsoft.Batch/stable/2024-02-01.19.0/BatchService.json b/swagger-specs/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json similarity index 96% rename from swagger-specs/batch/data-plane/Microsoft.Batch/stable/2024-02-01.19.0/BatchService.json rename to swagger-specs/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json index 6605ee990..6e9bcbe2a 100644 --- a/swagger-specs/batch/data-plane/Microsoft.Batch/stable/2024-02-01.19.0/BatchService.json +++ b/swagger-specs/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "BatchServiceClient", - "version": "2024-02-01.19.0", + "version": "2024-07-01.20.0", "description": "A client for issuing REST requests to the Azure Batch service." }, "x-ms-parameterized-host": { @@ -326,7 +326,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -455,7 +455,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-support-images.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -583,7 +583,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -816,7 +816,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-certificates.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-certificates.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -2252,7 +2252,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-task-files.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -2402,7 +2402,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -2774,6 +2774,17 @@ "postfix": "Options" } }, + { + "name": "force", + "default": false, + "in": "query", + "required": false, + "type": "boolean", + "description": "If true, the server will delete the JobSchedule even if the corresponding nodes have not fully processed the deletion. The default value is false.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -3699,6 +3710,17 @@ "postfix": "Options" } }, + { + "name": "force", + "default": false, + "in": "query", + "required": false, + "type": "boolean", + "description": "If true, the server will terminate the JobSchedule even if the corresponding nodes have not fully processed the termination. The default value is false.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -3875,7 +3897,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -4112,6 +4134,17 @@ "postfix": "Options" } }, + { + "name": "force", + "default": false, + "in": "query", + "required": false, + "type": "boolean", + "description": "If true, the server will delete the Job even if the corresponding nodes have not fully processed the deletion. The default value is false.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -5057,6 +5090,17 @@ "postfix": "Options" } }, + { + "name": "force", + "default": false, + "in": "query", + "required": false, + "type": "boolean", + "description": "If true, the server will terminate the Job even if the corresponding nodes have not fully processed the termination. The default value is false.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -5234,7 +5278,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-jobs.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -5390,7 +5434,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -5547,7 +5591,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -5774,9 +5818,6 @@ "Add a simple pool with resourceTags": { "$ref": "./examples/PoolAdd_ResourceTags.json" }, - "Add a CloudServiceConfiguration pool": { - "$ref": "./examples/PoolAdd_CloudServiceConfiguration.json" - }, "Add a VirtualMachineConfiguration pool": { "$ref": "./examples/PoolAdd_VirtualMachineConfiguration.json" }, @@ -5918,7 +5959,7 @@ "$ref": "./examples/PoolList_Basic.json" } }, - "summary": "Lists all of the Pools in the specified Account.", + "summary": "Lists all of the Pools which be mounted", "x-ms-request-id": "request-id", "parameters": [ { @@ -5926,7 +5967,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-pools.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -7686,6 +7727,12 @@ }, "Add a task with extra slot requirement": { "$ref": "./examples/TaskAdd_RequiredSlots.json" + }, + "Add a container task with container data isolation": { + "$ref": "./examples/TaskAdd_ContainerSettingsWithDataIsolation.json" + }, + "Add a container task with container data isolation bad request duplicate sources": { + "$ref": "./examples/TaskAdd_ContainerSettingsWithDataIsolation_DuplicateSources.json" } }, "summary": "Adds a Task to the specified Job.", @@ -7824,7 +7871,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-tasks.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -9623,7 +9670,7 @@ } }, "summary": "Reinstalls the operating system on the specified Compute Node.", - "description": "You can reinstall the operating system on a Compute Node only if it is in an idle or running state. This API can be invoked only on Pools created with the cloud service configuration property.", + "description": "You can reinstall the operating system on a Compute Node only if it is in an idle or running state.", "x-ms-request-id": "request-id", "parameters": [ { @@ -9980,19 +10027,19 @@ } } }, - "/pools/{poolId}/nodes/{nodeId}/remoteloginsettings": { - "get": { + "/pools/{poolId}/nodes/{nodeId}/start": { + "post": { "tags": [ "ComputeNodes" ], - "operationId": "ComputeNode_GetRemoteLoginSettings", + "operationId": "ComputeNode_Start", "x-ms-examples": { - "Node get remote login settings": { - "$ref": "./examples/NodeGetRemoteLoginSettings.json" + "Node reboot": { + "$ref": "./examples/NodeStart.json" } }, - "summary": "Gets the settings required for remote login to a Compute Node.", - "description": "Before you can remotely login to a Compute Node using the remote login settings, you must create a user Account on the Compute Node. This API can be invoked only on Pools created with the virtual machine configuration property. For Pools created with a cloud service configuration, see the GetRemoteDesktop API.", + "summary": "Starts the specified Compute Node.", + "description": "You can start a Compute Node only if it has been deallocated", "x-ms-request-id": "request-id", "parameters": [ { @@ -10007,7 +10054,7 @@ "in": "path", "required": true, "type": "string", - "description": "The ID of the Compute Node for which to obtain the remote login settings." + "description": "The ID of the Compute Node that you want to start." }, { "name": "timeout", @@ -10060,7 +10107,7 @@ } ], "responses": { - "200": { + "202": { "headers": { "client-request-id": { "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", @@ -10080,13 +10127,140 @@ "description": "The time at which the resource was last modified.", "type": "string", "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" } }, - "description": "A response containing the login settings.", + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", "schema": { - "$ref": "#/definitions/ComputeNodeGetRemoteLoginSettingsResult" + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/deallocate": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_Deallocate", + "x-ms-examples": { + "Node reboot": { + "$ref": "./examples/NodeDeallocate.json" + } + }, + "summary": "Deallocates the specified Compute Node.", + "description": "You can deallocate a Compute Node only if it is in an idle or running state.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node that you want to deallocate." + }, + { + "name": "nodeDeallocateParameter", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/NodeDeallocateParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be used instead.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" } }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, "default": { "description": "The error from the Batch service.", "schema": { @@ -10096,19 +10270,19 @@ } } }, - "/pools/{poolId}/nodes/{nodeId}/rdp": { + "/pools/{poolId}/nodes/{nodeId}/remoteloginsettings": { "get": { "tags": [ "ComputeNodes" ], - "operationId": "ComputeNode_GetRemoteDesktop", + "operationId": "ComputeNode_GetRemoteLoginSettings", "x-ms-examples": { - "Get RDP file of the compute node": { - "$ref": "./examples/NodeGetRemoteDesktop.json" + "Node get remote login settings": { + "$ref": "./examples/NodeGetRemoteLoginSettings.json" } }, - "summary": "Gets the Remote Desktop Protocol file for the specified Compute Node.", - "description": "Before you can access a Compute Node by using the RDP file, you must create a user Account on the Compute Node. This API can only be invoked on Pools created with a cloud service configuration. For Pools created with a virtual machine configuration, see the GetRemoteLoginSettings API.", + "summary": "Gets the settings required for remote login to a Compute Node.", + "description": "Before you can remotely login to a Compute Node using the remote login settings, you must create a user Account on the Compute Node.", "x-ms-request-id": "request-id", "parameters": [ { @@ -10123,7 +10297,7 @@ "in": "path", "required": true, "type": "string", - "description": "The ID of the Compute Node for which you want to get the Remote Desktop Protocol file." + "description": "The ID of the Compute Node for which to obtain the remote login settings." }, { "name": "timeout", @@ -10175,10 +10349,6 @@ "$ref": "#/parameters/ApiVersionParameter" } ], - "produces": [ - "application/json", - "application/octet-stream" - ], "responses": { "200": { "headers": { @@ -10202,10 +10372,9 @@ "format": "date-time-rfc1123" } }, - "description": "A response containing the RDP information.", + "description": "A response containing the login settings.", "schema": { - "type": "object", - "format": "file" + "$ref": "#/definitions/ComputeNodeGetRemoteLoginSettingsResult" } }, "default": { @@ -10362,7 +10531,7 @@ "in": "query", "required": false, "type": "string", - "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -11494,12 +11663,17 @@ "properties": { "subnetId": { "type": "string", - "title": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. This will only work with a VirtualMachineConfiguration Pool.", - "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", + "title": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task.", + "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", "externalDocs": { - "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", + "url": "https://azure.microsoft.com/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", "description": "Setting up RBAC for Azure Batch VNETs" } + }, + "skipWithdrawFromVNet": { + "type": "boolean", + "title": "Whether to withdraw Compute Nodes from the virtual network to DNC when the job is terminated or deleted.", + "description": "If true, nodes will remain joined to the virtual network to DNC. If false, nodes will automatically withdraw when the job ends. Defaults to false." } }, "required": [ @@ -11547,6 +11721,14 @@ } ] } + }, + "containerHostBatchBindMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerHostBatchBindMountEntry" + }, + "title": "The paths you want to mounted to container task.", + "description": "If this array is null or be not present, container task will mount entire temporary disk drive in windows (or AZ_BATCH_NODE_ROOT_DIR in Linux). It won't' mount any data paths into container if this array is set as empty." } }, "required": [ @@ -11843,7 +12025,7 @@ "loginMode": { "type": "string", "title": "The login mode for the user", - "description": "The default value for VirtualMachineConfiguration Pools is 'batch' and for CloudServiceConfiguration Pools is 'interactive'.", + "description": "The default is 'batch'.", "enum": [ "batch", "interactive" @@ -11858,7 +12040,7 @@ }, { "value": "interactive", - "description": "The LOGON32_LOGON_INTERACTIVE Win32 login mode. UAC is enabled on Windows VirtualMachineConfiguration Pools. If this option is used with an elevated user identity in a Windows VirtualMachineConfiguration Pool, the user session will not be elevated unless the application executed by the Task command line is configured to always require administrative privilege or to always require maximum privilege." + "description": "The LOGON32_LOGON_INTERACTIVE Win32 login mode. UAC is enabled on Windows Pools. If this option is used with an elevated user identity in a Windows Pool, the user session will not be elevated unless the application executed by the Task command line is configured to always require administrative privilege or to always require maximum privilege." } ] } @@ -11939,7 +12121,7 @@ "commandLine": { "type": "string", "title": "The command line of the Job Manager Task.", - "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)." }, "containerSettings": { "$ref": "#/definitions/TaskContainerSettings", @@ -12031,7 +12213,7 @@ "commandLine": { "type": "string", "title": "The command line of the Job Preparation Task.", - "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)." }, "containerSettings": { "$ref": "#/definitions/TaskContainerSettings", @@ -12090,7 +12272,7 @@ "commandLine": { "type": "string", "title": "The command line of the Job Release Task.", - "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)." }, "containerSettings": { "$ref": "#/definitions/TaskContainerSettings", @@ -12173,7 +12355,7 @@ "commandLine": { "type": "string", "title": "The command line of the StartTask.", - "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)." }, "containerSettings": { "$ref": "#/definitions/TaskContainerSettings", @@ -12232,7 +12414,7 @@ "storeLocation": { "type": "string", "title": "The location of the Certificate store on the Compute Node into which to install the Certificate.", - "description": "The default value is currentuser. This property is applicable only for Pools configured with Windows Compute Nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows Image reference). For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.", + "description": "The default value is currentuser. This property is applicable only for Pools configured with Windows Compute Nodes. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.", "enum": [ "currentuser", "localmachine" @@ -12257,7 +12439,7 @@ "storeName": { "type": "string", "title": "The name of the Certificate store on the Compute Node into which to install the Certificate.", - "description": "This property is applicable only for Pools configured with Windows Compute Nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows Image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My." + "description": "This property is applicable only for Pools configured with Windows Compute Nodes. Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My." }, "visibility": { "type": "array", @@ -12333,15 +12515,10 @@ "title": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size.", "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)." }, - "cloudServiceConfiguration": { - "$ref": "#/definitions/CloudServiceConfiguration", - "title": "The cloud service configuration for the Pool.", - "description": "This property must be specified if the Pool needs to be created with Azure PaaS VMs. This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). This property cannot be specified if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'." - }, "virtualMachineConfiguration": { "$ref": "#/definitions/VirtualMachineConfiguration", "title": "The virtual machine configuration for the Pool.", - "description": "This property must be specified if the Pool needs to be created with Azure IaaS VMs. This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + "description": "This property must be specified." }, "taskSlotsPerNode": { "type": "integer", @@ -12417,14 +12594,6 @@ "title": "The list of Packages to be installed on each Compute Node in the Pool.", "description": "When creating a pool, the package's application ID must be fully qualified (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool." }, - "applicationLicenses": { - "type": "array", - "items": { - "type": "string" - }, - "title": "The list of application licenses the Batch service will make available on each Compute Node in the Pool.", - "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, Pool creation will fail. The permitted licenses available on the Pool are 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each application license added to the Pool." - }, "userAccounts": { "type": "array", "items": { @@ -13610,25 +13779,6 @@ }, "title": "An error that occurred when resizing a Pool." }, - "CloudServiceConfiguration": { - "type": "object", - "properties": { - "osFamily": { - "type": "string", - "title": "The Azure Guest OS family to be installed on the virtual machines in the Pool.", - "description": "Possible values are:\n2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1.\n3 - OS Family 3, equivalent to Windows Server 2012.\n4 - OS Family 4, equivalent to Windows Server 2012 R2.\n5 - OS Family 5, equivalent to Windows Server 2016.\n6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)." - }, - "osVersion": { - "type": "string", - "title": "The Azure Guest OS version to be installed on the virtual machines in the Pool.", - "description": "The default value is * which specifies the latest operating system version for the specified OS family." - } - }, - "required": [ - "osFamily" - ], - "title": "The configuration for Compute Nodes in a Pool based on the Azure Cloud Services platform." - }, "ImageReference": { "type": "object", "properties": { @@ -13655,12 +13805,22 @@ "virtualMachineImageId": { "type": "string", "title": "The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version.", - "description": "This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration." + "description": "This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration." }, "exactVersion": { "type": "string", "readOnly": true, "description": "The specific version of the platform image or marketplace image used to create the node. This read-only field differs from 'version' only if the value specified for 'version' when the pool was created was 'latest'." + }, + "sharedGalleryImageId": { + "type": "string", + "title": "The shared gallery image unique identifier", + "description": "This property is mutually exclusive with other properties and can be fetched from shared gallery image GET call." + }, + "communityGalleryImageId": { + "type": "string", + "title": "The community gallery image unique identifier", + "description": "This property is mutually exclusive with other properties and can be fetched from community gallery image GET call." } }, "title": "A reference to an Azure Virtual Machines Marketplace Image or a Azure Compute Gallery Image. To get the list of all Azure Marketplace Image references verified by Azure Batch, see the 'List Supported Images' operation." @@ -13767,6 +13927,63 @@ ] } }, + "ContainerHostDataPath": { + "type": "string", + "title": "The paths which will be mounted to container task's container.", + "enum": [ + "Shared", + "Startup", + "VfsMounts", + "Task", + "JobPrep", + "Applications" + ], + "x-ms-enum": { + "name": "ContainerHostDataPath", + "modelAsString": true, + "values": [ + { + "value": "Shared", + "description": "The path for multi-instances task to shared their files." + }, + { + "value": "Startup", + "description": "The path for start task." + }, + { + "value": "VfsMounts", + "description": "The path contains all virtual file systems are mounted on this node." + }, + { + "value": "Task", + "description": "The task path." + }, + { + "value": "JobPrep", + "description": "The job-prep task path." + }, + { + "value": "Applications", + "description": "The applications path." + } + ] + } + }, + "ContainerHostBatchBindMountEntry": { + "type": "object", + "title": "The entry of path and mount mode you want to mount into task container.", + "properties": { + "source": { + "$ref": "#/definitions/ContainerHostDataPath", + "title": "The path which be mounted to container customer can select." + }, + "isReadOnly": { + "type": "boolean", + "title": "Mount this source path as read-only mode or not. Default value is false (read/write mode).", + "description": "For Linux, if you mount this path as a read/write mode, this does not mean that all users in container have the read/write access for the path, it depends on the access in host VM. If this path is mounted read-only, all users within the container will not be able to modify the path." + } + } + }, "ServiceArtifactReference": { "type": "object", "properties": { @@ -13804,7 +14021,7 @@ "$ref": "#/definitions/DataDisk" }, "title": "The configuration for data disks attached to the Compute Nodes in the Pool.", - "description": "This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/en-us/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/en-us/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine." + "description": "This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine." }, "licenseType": { "type": "string", @@ -13956,7 +14173,7 @@ } }, "title": "The list of disk targets Batch Service will encrypt on the compute node.", - "description": "If omitted, no disks on the compute nodes in the pool will be encrypted. On Linux pool, only \"TemporaryDisk\" is supported; on Windows pool, \"OsDisk\" and \"TemporaryDisk\" must be specified." + "description": "The list of disk targets Batch Service will encrypt on the compute node." } }, "description": "The disk encryption configuration applied on compute nodes in the pool. Disk encryption configuration is not supported on Linux pool created with Azure Compute Gallery Image." @@ -14158,7 +14375,7 @@ "DiffDiskPlacement": { "type": "string", "title": "Specifies the ephemeral disk placement for operating system disk for all compute nodes (VMs) in the pool.", - "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements", + "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements", "enum": [ "CacheDisk" ], @@ -14180,7 +14397,7 @@ "placement": { "$ref": "#/definitions/DiffDiskPlacement", "title": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool.", - "description": "This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements." + "description": "This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements." } }, "title": "Specifies the ephemeral Disk Settings for the operating system disk used by the compute node (VM)." @@ -14267,9 +14484,9 @@ "subnetId": { "type": "string", "title": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.", - "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. For Pools created with virtualMachineConfiguration only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported, but for Pools created with cloudServiceConfiguration both ARM and classic virtual networks are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For Pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For Pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", + "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. Enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", "externalDocs": { - "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", + "url": "https://azure.microsoft.com/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", "description": "Setting up RBAC for Azure Batch VNETs" } }, @@ -14297,13 +14514,11 @@ }, "endpointConfiguration": { "$ref": "#/definitions/PoolEndpointConfiguration", - "title": "The configuration for endpoints on Compute Nodes in the Batch Pool.", - "description": "Pool endpoint configuration is only supported on Pools with the virtualMachineConfiguration property." + "title": "The configuration for endpoints on Compute Nodes in the Batch Pool." }, "publicIPAddressConfiguration": { "$ref": "#/definitions/PublicIPAddressConfiguration", - "title": "The Public IPAddress configuration for Compute Nodes in the Batch Pool.", - "description": "Public IP configuration property is only supported on Pools with the virtualMachineConfiguration property." + "title": "The Public IPAddress configuration for Compute Nodes in the Batch Pool." }, "enableAcceleratedNetworking": { "type": "boolean", @@ -14441,15 +14656,10 @@ "title": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size.", "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)." }, - "cloudServiceConfiguration": { - "$ref": "#/definitions/CloudServiceConfiguration", - "title": "The cloud service configuration for the Pool.", - "description": "This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'." - }, "virtualMachineConfiguration": { "$ref": "#/definitions/VirtualMachineConfiguration", "title": "The virtual machine configuration for the Pool.", - "description": "This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified." + "description": "This property must be specified." }, "resizeTimeout": { "type": "string", @@ -14536,14 +14746,6 @@ "title": "The list of Packages to be installed on each Compute Node in the Pool.", "description": "Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool." }, - "applicationLicenses": { - "type": "array", - "items": { - "type": "string" - }, - "title": "The list of application licenses the Batch service will make available on each Compute Node in the Pool.", - "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, Pool creation will fail." - }, "taskSlotsPerNode": { "type": "integer", "format": "int32", @@ -14630,17 +14832,12 @@ "vmSize": { "type": "string", "title": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size.", - "description": "For information about available sizes of virtual machines for Cloud Services Pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and A2V2. For information about available VM sizes for Pools using Images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)." - }, - "cloudServiceConfiguration": { - "$ref": "#/definitions/CloudServiceConfiguration", - "title": "The cloud service configuration for the Pool.", - "description": "This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'." + "description": "For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)." }, "virtualMachineConfiguration": { "$ref": "#/definitions/VirtualMachineConfiguration", "title": "The virtual machine configuration for the Pool.", - "description": "This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified." + "description": "This property must be specified." }, "resizeTimeout": { "type": "string", @@ -14706,14 +14903,6 @@ "title": "The list of Packages to be installed on each Compute Node in the Pool.", "description": "When creating a pool, the package's application ID must be fully qualified (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool." }, - "applicationLicenses": { - "type": "array", - "items": { - "type": "string" - }, - "title": "The list of application licenses the Batch service will make available on each Compute Node in the Pool.", - "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, Pool creation will fail." - }, "taskSlotsPerNode": { "type": "integer", "format": "int32", @@ -15144,7 +15333,7 @@ "commandLine": { "type": "string", "title": "The command line of the Task.", - "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)." }, "containerSettings": { "$ref": "#/definitions/TaskContainerSettings", @@ -15247,7 +15436,7 @@ "commandLine": { "type": "string", "title": "The command line of the Task.", - "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)." }, "containerSettings": { "$ref": "#/definitions/TaskContainerSettings", @@ -15683,7 +15872,9 @@ "leavingpool", "offline", "preempted", - "upgradingos" + "upgradingos", + "deallocated", + "deallocating" ], "x-ms-enum": { "name": "ComputeNodeState", @@ -15748,6 +15939,14 @@ "value": "upgradingos", "description": "The Compute Node is undergoing an OS upgrade operation.", "name": "upgradingOS" + }, + { + "value": "deallocated", + "description": "The Compute Node is deallocated." + }, + { + "value": "deallocating", + "description": "The Compute Node is deallocating." } ] } @@ -16101,7 +16300,7 @@ "password": { "type": "string", "title": "The password of the Account.", - "description": "The password is required for Windows Compute Nodes (those created with 'cloudServiceConfiguration', or created with 'virtualMachineConfiguration' using a Windows Image reference). For Linux Compute Nodes, the password can optionally be specified along with the sshPublicKey property." + "description": "The password is required for Windows Compute Nodes. For Linux Compute Nodes, the password can optionally be specified along with the sshPublicKey property." }, "sshPublicKey": { "type": "string", @@ -16266,6 +16465,10 @@ "title": "The Pool on which the Batch service runs the Job's Tasks.", "description": "You may change the Pool for a Job only when the Job is disabled. The Patch Job call will fail if you include the poolInfo element and the Job is not disabled. If you specify an autoPoolSpecification in the poolInfo, only the keepAlive property of the autoPoolSpecification can be updated, and then only if the autoPoolSpecification has a poolLifetimeOption of Job (other job properties can be updated as normal). If omitted, the Job continues to run on its current Pool." }, + "networkConfiguration": { + "$ref": "#/definitions/JobNetworkConfiguration", + "title": "The network configuration for the Job." + }, "metadata": { "type": "array", "items": { @@ -16333,7 +16536,7 @@ "autoScaleFormula": { "type": "string", "title": "The formula for the desired number of Compute Nodes in the Pool.", - "description": "The formula is checked for validity before it is applied to the Pool. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling)." + "description": "The formula is checked for validity before it is applied to the Pool. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling)." }, "autoScaleEvaluationInterval": { "type": "string", @@ -16350,7 +16553,7 @@ "autoScaleFormula": { "type": "string", "title": "The formula for the desired number of Compute Nodes in the Pool.", - "description": "The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling)." + "description": "The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling)." } }, "required": [ @@ -16466,6 +16669,71 @@ "title": "The desired node communication mode for the pool.", "description": "If this element is present, it replaces the existing targetNodeCommunicationMode configured on the Pool. If omitted, any existing metadata is left unchanged.", "$ref": "#/definitions/NodeCommunicationMode" + }, + "displayName": { + "type": "string", + "title": "The display name for the Pool.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.

This field can be updated only when the pool is empty." + }, + "vmSize": { + "type": "string", + "title": "The size of virtual machines in the Pool. All VMs in a Pool are the same size.", + "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).

This field can be updated only when the pool is empty." + }, + "taskSlotsPerNode": { + "type": "integer", + "format": "int32", + "title": "The number of task slots that can be used to run concurrent tasks on a single compute node in the pool.", + "description": "The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.

This field can be updated only when the pool is empty." + }, + "taskSchedulingPolicy": { + "$ref": "#/definitions/TaskSchedulingPolicy", + "title": "How Tasks are distributed across Compute Nodes in a Pool.", + "description": "If not specified, the default is spread.

This field can be updated only when the pool is empty." + }, + "enableInterNodeCommunication": { + "type": "boolean", + "title": "Whether the Pool permits direct communication between Compute Nodes.", + "description": "Enabling inter-node communication limits the maximum size of the Pool due to deployment restrictions on the Compute Nodes of the Pool. This may result in the Pool not reaching its desired size. The default value is false.

This field can be updated only when the pool is empty." + }, + "virtualMachineConfiguration": { + "$ref": "#/definitions/VirtualMachineConfiguration", + "title": "The virtual machine configuration for the Pool.", + "description": "This property must be specified.

This field can be updated only when the pool is empty." + }, + "networkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration", + "title": "The network configuration for the Pool.", + "description": "This field can be updated only when the pool is empty." + }, + "userAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccount" + }, + "title": "The list of user Accounts to be created on each Compute Node in the Pool.", + "description": "This field can be updated only when the pool is empty." + }, + "mountConfiguration": { + "type": "array", + "items": { + "$ref": "#/definitions/MountConfiguration" + }, + "title": "Mount storage using specified file system for the entire lifetime of the pool.", + "description": "Mount the storage using Azure fileshare, NFS, CIFS or Blobfuse based file system.

This field can be updated only when the pool is empty." + }, + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "title": "The upgrade policy for the Pool.", + "description": "Describes an upgrade policy - automatic, manual, or rolling.

This field can be updated only when the pool is empty." + }, + "resourceTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "The user-specified tags associated with the pool.", + "description": "The user-defined tags to be associated with the Azure Batch Pool. When specified, these tags are propagated to the backing Azure resources associated with the pool. This property can only be specified when the Batch account was created with the poolAllocationMode property set to 'UserSubscription'.

This field can be updated only when the pool is empty." } }, "title": "The set of changes to be made to a Pool." @@ -16487,7 +16755,7 @@ "password": { "type": "string", "title": "The password of the Account.", - "description": "The password is required for Windows Compute Nodes (those created with 'cloudServiceConfiguration', or created with 'virtualMachineConfiguration' using a Windows Image reference). For Linux Compute Nodes, the password can optionally be specified along with the sshPublicKey property. If omitted, any existing password is removed." + "description": "The password is required for Windows Compute Nodes. For Linux Compute Nodes, the password can optionally be specified along with the sshPublicKey property. If omitted, any existing password is removed." }, "expiryTime": { "type": "string", @@ -16620,6 +16888,47 @@ }, "title": "Options for disabling scheduling on a Compute Node." }, + "NodeDeallocateParameter": { + "type": "object", + "properties": { + "nodeDeallocateOption": { + "type": "string", + "title": "When to deallocate the Compute Node and what to do with currently running Tasks.", + "description": "The default value is requeue.", + "enum": [ + "requeue", + "terminate", + "taskcompletion", + "retaineddata" + ], + "x-ms-enum": { + "name": "ComputeNodeDeallocateOption", + "modelAsString": false, + "values": [ + { + "value": "requeue", + "description": "Terminate running Task processes and requeue the Tasks. The Tasks will run again when a Compute Node is available. Deallocate the Compute Node as soon as Tasks have been terminated." + }, + { + "value": "terminate", + "description": "Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Deallocate the Compute Node as soon as Tasks have been terminated." + }, + { + "value": "taskcompletion", + "description": "Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Deallocate the Compute Node when all Tasks have completed.", + "name": "taskCompletion" + }, + { + "value": "retaineddata", + "description": "Allow currently running Tasks to complete, then wait for all Task data retention periods to expire. Schedule no new Tasks while waiting. Deallocate the Compute Node when all Task retention periods have expired.", + "name": "retainedData" + } + ] + } + } + }, + "title": "Options for deallocating a Compute Node." + }, "NodeRemoveParameter": { "type": "object", "properties": { @@ -16708,7 +17017,7 @@ "$ref": "#/definitions/HttpHeader" }, "title": "A list of name-value pairs for headers to be used in uploading output files", - "description": "These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://docs.microsoft.com/en-us/rest/api/storageservices/put-blob#request-headers-all-blob-types" + "description": "These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://docs.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types" } }, "required": [ @@ -17322,6 +17631,16 @@ "format": "int32", "title": "The number of Compute Nodes in the upgradingOS state." }, + "deallocated": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the deallocated state." + }, + "deallocating": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the deallocating state." + }, "total": { "type": "integer", "format": "int32", @@ -17343,6 +17662,8 @@ "unusable", "waitingForStartTask", "upgradingOS", + "deallocated", + "deallocating", "total" ], "title": "The number of Compute Nodes in each Compute Node state." @@ -17589,6 +17910,10 @@ "storageAccountType": { "$ref": "#/definitions/StorageAccountType", "title": "The storage account type for managed disk." + }, + "securityProfile": { + "$ref": "#/definitions/VMDiskSecurityProfile", + "title": "Specifies the security profile settings for the managed disk." } } }, @@ -17599,7 +17924,8 @@ "type": "string", "title": "Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings.", "enum": [ - "trustedLaunch" + "trustedLaunch", + "confidentialVM" ], "x-ms-enum": { "name": "SecurityTypes", @@ -17608,13 +17934,17 @@ { "value": "trustedLaunch", "description": "Trusted launch protects against advanced and persistent attack techniques." + }, + { + "value": "confidentialVM", + "description": "Azure confidential computing offers confidential VMs are for tenants with high security and confidentiality requirements. These VMs provide a strong, hardware-enforced boundary to help meet your security needs. You can use confidential VMs for migrations without making changes to your code, with the platform protecting your VM's state from being read or modified." } ] } }, "encryptionAtHost": { "type": "boolean", - "description": "This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself." + "description": "This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself. For more information on encryption at host requirements, please refer to https://learn.microsoft.com/azure/virtual-machines/disk-encryption#supported-vm-sizes." }, "uefiSettings": { "$ref": "#/definitions/UefiSettings", @@ -17675,8 +18005,7 @@ }, "rollingUpgradePolicy": { "$ref": "#/definitions/RollingUpgradePolicy", - "title": "The configuration parameters used while performing a rolling upgrade.", - "description": "This property is only supported on Pools with the virtualMachineConfiguration property." + "title": "The configuration parameters used while performing a rolling upgrade." } }, "required": [ @@ -17693,7 +18022,7 @@ }, "enableAutomaticOSUpgrade": { "type": "boolean", - "description": "Indicates whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the OS image becomes available.

If this is set to true for Windows based pools, [WindowsConfiguration.enableAutomaticUpdates](https://learn.microsoft.com/en-us/rest/api/batchservice/pool/add?tabs=HTTP#windowsconfiguration) cannot be set to true." + "description": "Indicates whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the OS image becomes available.

If this is set to true for Windows based pools, [WindowsConfiguration.enableAutomaticUpdates](https://learn.microsoft.com/rest/api/batchservice/pool/add?tabs=HTTP#windowsconfiguration) cannot be set to true." }, "useRollingUpgradePolicy": { "type": "boolean", @@ -17749,6 +18078,32 @@ } }, "description": "The configuration parameters used while performing a rolling upgrade." + }, + "VMDiskSecurityProfile": { + "type": "object", + "properties": { + "securityEncryptionType": { + "type": "string", + "title": "Specifies the EncryptionType of the managed disk. It is set to VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob. **Note**: It can be set for only Confidential VMs and is required when using Confidential VMs.", + "enum": [ + "NonPersistedTPM", + "VMGuestStateOnly" + ], + "x-ms-enum": { + "name": "SecurityEncryptionTypes", + "modelAsString": true, + "values": [ + { + "value": "NonPersistedTPM" + }, + { + "value": "VMGuestStateOnly" + } + ] + } + } + }, + "description": "Specifies the security profile settings for the managed disk. **Note**: It can only be set for Confidential VMs and required when using Confidential VMs." } }, "parameters": { diff --git a/swagger-specs/batch/data-plane/api-set.json b/swagger-specs/batch/data-plane/api-set.json index fc6d4fb76..5e3f53895 100644 --- a/swagger-specs/batch/data-plane/api-set.json +++ b/swagger-specs/batch/data-plane/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Batch/stable/2024-02-01.19.0/BatchService.json"], "name": "package-2024-02"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json"], "name": "package-2024-07"} \ No newline at end of file diff --git a/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-02-01/BatchManagement.json b/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json similarity index 97% rename from swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-02-01/BatchManagement.json rename to swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json index 372db6d50..1bd2630ee 100644 --- a/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-02-01/BatchManagement.json +++ b/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json @@ -3,7 +3,7 @@ "info": { "title": "BatchManagementClient", "description": "The Batch Management Client.", - "version": "2024-02-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ @@ -1098,67 +1098,6 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/cloudServiceSkus": { - "get": { - "tags": [ - "Location" - ], - "operationId": "Location_ListSupportedCloudServiceSkus", - "x-ms-examples": { - "LocationListCloudServiceSkus": { - "$ref": "./examples/LocationListCloudServiceSkus.json" - } - }, - "description": "Gets the list of Batch supported Cloud Service VM sizes available at the given location.", - "parameters": [ - { - "name": "locationName", - "in": "path", - "required": true, - "type": "string", - "description": "The region for which to retrieve Batch service supported SKUs." - }, - { - "name": "maxresults", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The maximum number of items to return in the response." - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "OData filter expression. Valid properties for filtering are \"familyName\"." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The operation was successful. The response contains the Batch service supported Cloud Service VM sizes for the subscription in the specified location.", - "schema": { - "$ref": "#/definitions/SupportedSkusResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, "/providers/Microsoft.Batch/operations": { "get": { "tags": [ @@ -2131,15 +2070,9 @@ "operationId": "Pool_Create", "description": "Creates a new pool inside the specified account.", "x-ms-examples": { - "CreatePool - Minimal CloudServiceConfiguration": { - "$ref": "./examples/PoolCreate_MinimalCloudServiceConfiguration.json" - }, "CreatePool - Minimal VirtualMachineConfiguration": { "$ref": "./examples/PoolCreate_MinimalVirtualMachineConfiguration.json" }, - "CreatePool - Full CloudServiceConfiguration": { - "$ref": "./examples/PoolCreate_CloudServiceConfiguration.json" - }, "CreatePool - ResourceTags": { "$ref": "./examples/PoolCreate_ResourceTags.json" }, @@ -2175,6 +2108,9 @@ }, "CreatePool - VirtualMachineConfiguration OSDisk": { "$ref": "./examples/PoolCreate_VirtualMachineConfiguration_ManagedOSDisk.json" + }, + "CreatePool - Tags": { + "$ref": "./examples/PoolCreate_Tags.json" } }, "parameters": [ @@ -3064,7 +3000,7 @@ }, "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/AzureResource" } ], "description": "Contains information about an Azure Batch account." @@ -3229,7 +3165,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains information about an application in a Batch account." @@ -3263,7 +3199,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "An application package which represents a particular version of an application." @@ -3365,7 +3301,7 @@ }, "description": "Quotas associated with a Batch region for a particular subscription." }, - "Resource": { + "AzureResource": { "type": "object", "properties": { "id": { @@ -3400,7 +3336,7 @@ "description": "A definition of an Azure resource.", "x-ms-azure-resource": true }, - "ProxyResource": { + "AzureProxyResource": { "type": "object", "properties": { "id": { @@ -3422,6 +3358,13 @@ "readOnly": true, "type": "string", "description": "The ETag of the resource, used for concurrency statements." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags of the resource." } }, "description": "A definition of an Azure resource.", @@ -3433,7 +3376,8 @@ "default": "Enabled", "enum": [ "Enabled", - "Disabled" + "Disabled", + "SecuredByPerimeter" ], "x-ms-enum": { "name": "PublicNetworkAccessType", @@ -3446,6 +3390,10 @@ { "value": "Disabled", "description": "Disables public connectivity and enables private connectivity to Azure Batch Service through private endpoint resource." + }, + { + "value": "SecuredByPerimeter", + "description": "Secures connectivity to Azure Batch through NSP configuration." } ] } @@ -3731,7 +3679,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains information about a certificate." @@ -3747,7 +3695,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains information about a certificate." @@ -3829,7 +3777,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains the information for a detector." @@ -3855,7 +3803,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains information about a private link resource." @@ -3899,7 +3847,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains information about a private link resource." @@ -4053,7 +4001,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/AzureProxyResource" } ], "description": "Contains information about a pool." @@ -4145,12 +4093,11 @@ "vmSize": { "type": "string", "title": "The size of virtual machines in the pool. All VMs in a pool are the same size.", - "description": "For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)." + "description": "For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)." }, "deploymentConfiguration": { "$ref": "#/definitions/DeploymentConfiguration", - "title": "This property describes how the pool nodes will be deployed - using Cloud Services or Virtual Machines.", - "description": "Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS)." + "title": "This property describes the virtual machines that the pool nodes will be deployed on." }, "currentDedicatedNodes": { "type": "integer", @@ -4344,15 +4291,9 @@ "DeploymentConfiguration": { "type": "object", "properties": { - "cloudServiceConfiguration": { - "$ref": "#/definitions/CloudServiceConfiguration", - "title": "The cloud service configuration for the pool.", - "description": "This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'." - }, "virtualMachineConfiguration": { "$ref": "#/definitions/VirtualMachineConfiguration", - "title": "The virtual machine configuration for the pool.", - "description": "This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified." + "title": "The virtual machine configuration for the pool." } }, "title": "Deployment configuration properties." @@ -4473,7 +4414,7 @@ "storeLocation": { "type": "string", "title": "The location of the certificate store on the compute node into which to install the certificate.", - "description": "The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.", + "description": "The default value is currentUser. This property is applicable only for pools configured with Windows compute nodes. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.", "enum": [ "CurrentUser", "LocalMachine" @@ -4496,7 +4437,7 @@ "storeName": { "type": "string", "title": "The name of the certificate store on the compute node into which to install the certificate.", - "description": "This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My." + "description": "This property is applicable only for pools configured with Windows compute nodes. Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My." }, "visibility": { "type": "array", @@ -4993,6 +4934,16 @@ "type": "string", "title": "The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionId}.", "description": "This property is mutually exclusive with other properties. The Azure Compute Gallery Image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration." + }, + "sharedGalleryImageId": { + "type": "string", + "title": "The shared gallery image unique identifier", + "description": "This property is mutually exclusive with other properties and can be fetched from shared gallery image GET call." + }, + "communityGalleryImageId": { + "type": "string", + "title": "The community gallery image unique identifier", + "description": "This property is mutually exclusive with other properties and can be fetched from community gallery image GET call." } }, "title": "A reference to an Azure Virtual Machines Marketplace image or the Azure Image resource of a custom Virtual Machine. To get the list of all imageReferences verified by Azure Batch, see the 'List supported node agent SKUs' operation." @@ -5090,7 +5041,7 @@ "loginMode": { "type": "string", "title": "Login mode for user", - "description": "Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.", + "description": "Specifies login mode for the user. The default value is Interactive.", "enum": [ "Batch", "Interactive" @@ -5240,6 +5191,14 @@ } ] } + }, + "containerHostBatchBindMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerHostBatchBindMountEntry" + }, + "title": "The paths you want to mounted to container task.", + "description": "If this array is null or be not present, container task will mount entire temporary disk drive in windows (or AZ_BATCH_NODE_ROOT_DIR in Linux). It won't' mount any data paths into container if this array is set as empty." } }, "required": [ @@ -5457,6 +5416,63 @@ ] } }, + "ContainerHostDataPath": { + "type": "string", + "title": "The paths which will be mounted to container task's container.", + "enum": [ + "Shared", + "Startup", + "VfsMounts", + "Task", + "JobPrep", + "Applications" + ], + "x-ms-enum": { + "name": "ContainerHostDataPath", + "modelAsString": true, + "values": [ + { + "value": "Shared", + "description": "The path for multi-instances task to shared their files." + }, + { + "value": "Startup", + "description": "The path for start task." + }, + { + "value": "VfsMounts", + "description": "The path contains all virtual file systems are mounted on this node." + }, + { + "value": "Task", + "description": "The task path." + }, + { + "value": "JobPrep", + "description": "The job-prep task path." + }, + { + "value": "Applications", + "description": "The applications path." + } + ] + } + }, + "ContainerHostBatchBindMountEntry": { + "type": "object", + "title": "The entry of path and mount mode you want to mount into task container.", + "properties": { + "source": { + "$ref": "#/definitions/ContainerHostDataPath", + "title": "The path which be mounted to container customer can select." + }, + "isReadOnly": { + "type": "boolean", + "title": "Mount this source path as read-only mode or not. Default value is false (read/write mode).", + "description": "For Linux, if you mount this path as a read/write mode, this does not mean that all users in container have the read/write access for the path, it depends on the access in host VM. If this path is mounted read-only, all users within the container will not be able to modify the path." + } + } + }, "DiffDiskPlacement": { "type": "string", "title": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool.", @@ -5566,7 +5582,7 @@ "subnetId": { "type": "string", "title": "The ARM resource identifier of the virtual network subnet which the compute nodes of the pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.", - "description": "The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", + "description": "The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. Enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", "externalDocs": { "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", "description": "Setting up RBAC for Azure Batch VNets" @@ -5597,13 +5613,11 @@ }, "endpointConfiguration": { "$ref": "#/definitions/PoolEndpointConfiguration", - "title": "The configuration for endpoints on compute nodes in the Batch pool.", - "description": "Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property." + "title": "The configuration for endpoints on compute nodes in the Batch pool." }, "publicIPAddressConfiguration": { "$ref": "#/definitions/PublicIPAddressConfiguration", - "title": "The Public IPAddress configuration for Compute Nodes in the Batch Pool.", - "description": "This property is only supported on Pools with the virtualMachineConfiguration property." + "title": "The Public IPAddress configuration for Compute Nodes in the Batch Pool." }, "enableAcceleratedNetworking": { "type": "boolean", @@ -5617,25 +5631,6 @@ }, "description": "The network configuration for a pool." }, - "CloudServiceConfiguration": { - "type": "object", - "properties": { - "osFamily": { - "type": "string", - "title": "The Azure Guest OS family to be installed on the virtual machines in the pool.", - "description": "Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)." - }, - "osVersion": { - "type": "string", - "title": "The Azure Guest OS version to be installed on the virtual machines in the pool.", - "description": "The default value is * which specifies the latest operating system version for the specified OS family." - } - }, - "required": [ - "osFamily" - ], - "title": "The configuration for nodes in a pool based on the Azure Cloud Services platform." - }, "MetadataItem": { "type": "object", "properties": { @@ -6393,6 +6388,10 @@ "storageAccountType": { "$ref": "#/definitions/StorageAccountType", "title": "The storage account type for managed disk." + }, + "securityProfile": { + "$ref": "#/definitions/VMDiskSecurityProfile", + "title": "Specifies the security profile for the managed disk." } } }, @@ -6403,7 +6402,8 @@ "type": "string", "title": "Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings.", "enum": [ - "trustedLaunch" + "trustedLaunch", + "confidentialVM" ], "x-ms-enum": { "name": "SecurityTypes", @@ -6412,6 +6412,10 @@ { "value": "trustedLaunch", "description": "Trusted launch protects against advanced and persistent attack techniques." + }, + { + "value": "confidentialVM", + "description": "Azure confidential computing offers confidential VMs are for tenants with high security and confidentiality requirements. These VMs provide a strong, hardware-enforced boundary to help meet your security needs. You can use confidential VMs for migrations without making changes to your code, with the platform protecting your VM's state from being read or modified." } ] } @@ -6479,8 +6483,7 @@ }, "rollingUpgradePolicy": { "$ref": "#/definitions/RollingUpgradePolicy", - "title": "The configuration parameters used while performing a rolling upgrade.", - "description": "This property is only supported on Pools with the virtualMachineConfiguration property." + "title": "The configuration parameters used while performing a rolling upgrade." } }, "required": [ @@ -6552,6 +6555,32 @@ } }, "description": "The configuration parameters used while performing a rolling upgrade." + }, + "VMDiskSecurityProfile": { + "type": "object", + "properties": { + "securityEncryptionType": { + "type": "string", + "title": "Specifies the EncryptionType of the managed disk. It is set to VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob. **Note**: It can be set for only Confidential VMs and required when using Confidential VMs.", + "enum": [ + "NonPersistedTPM", + "VMGuestStateOnly" + ], + "x-ms-enum": { + "name": "SecurityEncryptionTypes", + "modelAsString": true, + "values": [ + { + "value": "NonPersistedTPM" + }, + { + "value": "VMGuestStateOnly" + } + ] + } + } + }, + "description": "Specifies the security profile settings for the managed disk. **Note**: It can only be set for Confidential VMs and is required when using Confidential VMs." } }, "parameters": { diff --git a/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/NetworkSecurityPerimeter.json b/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/NetworkSecurityPerimeter.json new file mode 100644 index 000000000..b0bca5fba --- /dev/null +++ b/swagger-specs/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/NetworkSecurityPerimeter.json @@ -0,0 +1,197 @@ +{ + "swagger": "2.0", + "info": { + "title": "BatchManagementClient", + "description": "The Batch Management Client.", + "version": "2024-07-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Microsoft Entra OAuth 2.0 auth code flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/networkSecurityPerimeterConfigurations": { + "get": { + "tags": [ + "NetworkSecurityPerimeter" + ], + "operationId": "NetworkSecurityPerimeter_ListConfigurations", + "description": "Lists all of the NSP configurations in the specified account.", + "x-ms-examples": { + "ListNspConfigurations": { + "$ref": "./examples/NspConfigurationsList.json" + } + }, + "parameters": [ + { + "$ref": "./BatchManagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/AccountNameParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of NSP configurations associated with the account.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/networksecurityperimeter.json#/definitions/NetworkSecurityPerimeterConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./BatchManagement.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}": { + "get": { + "tags": [ + "NetworkSecurityPerimeter" + ], + "operationId": "NetworkSecurityPerimeter_GetConfiguration", + "description": "Gets information about the specified NSP configuration.", + "x-ms-examples": { + "GetNspConfiguration": { + "$ref": "./examples/NspConfigurationGet.json" + } + }, + "parameters": [ + { + "$ref": "./BatchManagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/networkSecurityPerimeterConfigurationName" + }, + { + "$ref": "./BatchManagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the NSP configuration.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/networksecurityperimeter.json#/definitions/NetworkSecurityPerimeterConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./BatchManagement.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}/reconcile": { + "post": { + "tags": [ + "NetworkSecurityPerimeter" + ], + "operationId": "NetworkSecurityPerimeter_ReconcileConfiguration", + "description": "Reconciles the specified NSP configuration.", + "x-ms-examples": { + "ReconcileNspConfiguration": { + "$ref": "./examples/NspConfigurationReconcile.json" + } + }, + "parameters": [ + { + "$ref": "./BatchManagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./BatchManagement.json#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/networkSecurityPerimeterConfigurationName" + }, + { + "$ref": "./BatchManagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The operation was accepted and will be performed in the background.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that specifies the delay in seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "x-ms-error-response": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "parameters": { + "networkSecurityPerimeterConfigurationName": { + "name": "networkSecurityPerimeterConfigurationName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^.*$", + "description": "The name for Network Security Perimeter configuration", + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/batch/resource-manager/api-set.json b/swagger-specs/batch/resource-manager/api-set.json index 89ec472ea..cf1c95c1b 100644 --- a/swagger-specs/batch/resource-manager/api-set.json +++ b/swagger-specs/batch/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Batch/stable/2024-02-01/BatchManagement.json"], "name": "package-2024-02"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Batch/stable/2024-07-01/BatchManagement.json", "Microsoft.Batch/stable/2024-07-01/NetworkSecurityPerimeter.json"], "name": "package-2024-07"} \ No newline at end of file diff --git a/swagger-specs/communication/data-plane/Email/api-set.json b/swagger-specs/communication/data-plane/Email/api-set.json index a701e7946..b737e57da 100644 --- a/swagger-specs/communication/data-plane/Email/api-set.json +++ b/swagger-specs/communication/data-plane/Email/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["stable/2023-03-31/CommunicationServicesEmail.json"], "name": "package-2023-03-31"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["preview/2021-10-01-preview/CommunicationServicesEmail.json"], "name": "package-2021-10-01-preview"} \ No newline at end of file diff --git a/swagger-specs/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json b/swagger-specs/communication/data-plane/Email/preview/2021-10-01-preview/CommunicationServicesEmail.json similarity index 57% rename from swagger-specs/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json rename to swagger-specs/communication/data-plane/Email/preview/2021-10-01-preview/CommunicationServicesEmail.json index 8fc589b19..1a427a342 100644 --- a/swagger-specs/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json +++ b/swagger-specs/communication/data-plane/Email/preview/2021-10-01-preview/CommunicationServicesEmail.json @@ -1,26 +1,29 @@ { "swagger": "2.0", "info": { - "title": "EmailClient", + "title": "CommunicationEmailClient", "description": "Azure Communication Email Service", - "version": "2023-03-31" + "version": "2021-10-01-preview" }, "paths": { - "/emails/operations/{operationId}": { + "/emails/{messageId}/status": { "get": { "tags": [ - "EmailGetSendResult" + "EmailGetSendStatus" ], - "summary": "Gets the status of the email send operation.", - "operationId": "Email_GetSendResult", + "summary": "Gets the status of a message sent previously.", + "operationId": "Email_GetSendStatus", "produces": [ "application/json" ], + "consumes": [ + "application/json" + ], "parameters": [ { "in": "path", - "name": "operationId", - "description": "ID of the long running operation (GUID) returned from a previous call to send email", + "name": "messageId", + "description": "System generated message id (GUID) returned from a previous call to send email", "required": true, "type": "string" }, @@ -38,32 +41,25 @@ } }, "schema": { - "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" } }, "200": { "description": "Message status was successfully retrieved.", "headers": { - "retry-after": { - "description": "This header will only be present when the status is a non-terminal status. It indicates the minimum amount of time in seconds to wait before polling for operation status again.", - "type": "integer", - "format": "int32" + "Retry-After": { + "description": "Amount of time client should wait before retrying the request, specified in seconds ", + "type": "integer" } }, "schema": { - "$ref": "#/definitions/EmailSendResult" + "$ref": "#/definitions/SendStatusResult" } } }, "x-ms-examples": { - "Get Message Status FailedTerminalStatus": { - "$ref": "./examples/GetOperationStatusReturnsFailedTerminalStatus.json" - }, - "Get Message Status NonTerminalStatus": { - "$ref": "./examples/GetOperationStatusReturnsNonTerminalStatus.json" - }, - "Get Message Status SuccessTerminalStatus": { - "$ref": "./examples/GetOperationStatusReturnsSuccessTerminalStatus.json" + "Get Message Status": { + "$ref": "./examples/GetSendStatus.json" } } } @@ -84,20 +80,17 @@ "parameters": [ { "in": "header", - "name": "Operation-Id", - "description": "This is the ID provided by the customer to identify the long running operation. If an ID is not provided by the customer, the service will generate one.", + "name": "repeatability-request-id", + "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs.", "type": "string", - "required": false, - "format": "uuid" + "required": true }, { "in": "header", - "name": "x-ms-client-request-id", - "description": "Tracking ID sent with the request to help with debugging.", + "name": "repeatability-first-sent", + "description": "Must be sent by clients to specify that a request is repeatable. Repeatability-First-Sent is used to specify the date and time at which the request was first created in the IMF-fix date form of HTTP-date as defined in RFC7231. eg- Tue, 26 Mar 2019 16:06:51 GMT", "type": "string", - "required": false, - "format": "uuid", - "x-ms-client-name": "ClientRequestId" + "required": true }, { "$ref": "#/parameters/ApiVersionParameter" @@ -107,7 +100,6 @@ "name": "emailMessage", "description": "Message payload for sending an email", "required": true, - "x-ms-client-name": "message", "schema": { "$ref": "#/definitions/EmailMessage" } @@ -123,31 +115,31 @@ } }, "schema": { - "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse" } }, "202": { - "description": "The service has accepted the request and will start processing the message later. It will return 'Accepted' immediately and include an 'Operation-Location' header. Client side should further query the operation/message status using the URL specified in 'Operation-Location' header. Once the send operation has succeeded, you can get additional status about email delivery through either Azure Monitor or Event Grid events (for events reference, please refer to: https://learn.microsoft.com/en-us/azure/event-grid/communication-services-email-events)", + "description": "Message accepted, the `Operation-Location` header contains the URL to poll for the message status.", "headers": { + "Repeatability-Result": { + "description": "Status of a repeatable request.", + "type": "string" + }, "Operation-Location": { - "description": "Location url of where to poll the status of this operation from.", + "description": "Location url of where to poll the status of this message from.", "type": "string" }, - "retry-after": { - "description": "This header will only be present when the operation status is a non-terminal status. It indicates the minimum amount of time in seconds to wait before polling for operation status again.", - "type": "integer", - "format": "int32" + "Retry-After": { + "description": "Amount of time client should wait before retrying the request, specified in seconds ", + "type": "integer" + }, + "x-ms-request-id": { + "description": "System generated GUID indicating the id of this specific message, to be used for tracking purposes.", + "type": "string" } - }, - "schema": { - "$ref": "#/definitions/EmailSendResult" } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, "x-ms-examples": { "Send Email": { "$ref": "./examples/SendEmail.json" @@ -157,44 +149,10 @@ } }, "definitions": { - "EmailSendResult": { - "description": "Status of the long running operation", - "required": [ - "id", - "status" - ], - "type": "object", - "properties": { - "id": { - "description": "The unique id of the operation. Use a UUID.", - "type": "string", - "example": "8540c0de-899f-5cce-acb5-3ec493af3800" - }, - "status": { - "description": "Status of operation.", - "enum": [ - "NotStarted", - "Running", - "Succeeded", - "Failed", - "Canceled" - ], - "type": "string", - "x-ms-enum": { - "name": "EmailSendStatus", - "modelAsString": true - } - }, - "error": { - "description": "Error details when status is a non-success terminal state.", - "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorDetail" - } - } - }, "EmailMessage": { "description": "Message payload for sending an email", "required": [ - "senderAddress", + "sender", "content", "recipients" ], @@ -202,12 +160,13 @@ "properties": { "headers": { "description": "Custom email headers to be passed.", - "type": "object", - "additionalProperties": { - "type": "string" + "type": "array", + "x-ms-client-name": "CustomHeaders", + "items": { + "$ref": "#/definitions/EmailCustomHeader" } }, - "senderAddress": { + "sender": { "description": "Sender email address from a verified domain.", "type": "string", "example": "info@contoso.com" @@ -216,12 +175,16 @@ "description": "Email content to be sent.", "$ref": "#/definitions/EmailContent" }, + "importance": { + "description": "The importance type for the email.", + "$ref": "#/definitions/EmailImportance" + }, "recipients": { "description": "Recipients for the email.", "$ref": "#/definitions/EmailRecipients" }, "attachments": { - "description": "List of attachments. Please note that we limit the total size of an email request (which includes attachments) to 10MB.", + "description": "list of attachments", "type": "array", "items": { "$ref": "#/definitions/EmailAttachment" @@ -234,20 +197,40 @@ "$ref": "#/definitions/EmailAddress" } }, - "userEngagementTrackingDisabled": { + "disableUserEngagementTracking": { "description": "Indicates whether user engagement tracking should be disabled for this request if the resource-level user engagement tracking setting was already enabled in the control plane.", "type": "boolean" } } }, + "EmailCustomHeader": { + "description": "Custom header for email.", + "type": "object", + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "description": "Header name.", + "type": "string", + "example": "" + }, + "value": { + "description": "Header value.", + "type": "string", + "example": "" + } + } + }, "EmailAddress": { "description": "An object representing the email address and its display name", "type": "object", "required": [ - "address" + "email" ], "properties": { - "address": { + "email": { "description": "Email address.", "type": "string", "example": "abc@contoso.com" @@ -283,13 +266,27 @@ } } }, + "EmailImportance": { + "description": "The importance type for the email.", + "enum": [ + "high", + "normal", + "low" + ], + "type": "string", + "default": "normal", + "x-ms-enum": { + "name": "EmailImportance", + "modelAsString": true + } + }, "EmailAttachment": { "description": "Attachment to the email.", "type": "object", "required": [ "name", - "contentType", - "contentInBase64" + "attachmentType", + "contentBytesBase64" ], "properties": { "name": { @@ -297,19 +294,54 @@ "type": "string", "example": "attachment.pdf" }, - "contentType": { - "description": "MIME type of the content being attached.", - "type": "string", - "example": "text/plain" + "attachmentType": { + "$ref": "#/definitions/EmailAttachmentType" }, - "contentInBase64": { + "contentBytesBase64": { "description": "Base64 encoded contents of the attachment", "type": "string", - "format": "byte", - "example": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ=" + "example": "TWFueSBoYW5kcyBtYWtlIGxpZ2h0I" } } }, + "EmailAttachmentType": { + "description": "The type of attachment file.", + "enum": [ + "avi", + "bmp", + "doc", + "docm", + "docx", + "gif", + "jpeg", + "mp3", + "one", + "pdf", + "png", + "ppsm", + "ppsx", + "ppt", + "pptm", + "pptx", + "pub", + "rpmsg", + "rtf", + "tif", + "txt", + "vsd", + "wav", + "wma", + "xls", + "xlsb", + "xlsm", + "xlsx" + ], + "type": "string", + "x-ms-enum": { + "name": "EmailAttachmentType", + "modelAsString": true + } + }, "EmailRecipients": { "description": "Recipients of the email", "type": "object", @@ -324,23 +356,66 @@ "$ref": "#/definitions/EmailAddress" } }, - "cc": { + "CC": { "description": "Email CC recipients", "type": "array", - "x-ms-client-name": "CC", "items": { "$ref": "#/definitions/EmailAddress" } }, - "bcc": { + "bCC": { "description": "Email BCC recipients", "type": "array", - "x-ms-client-name": "BCC", "items": { "$ref": "#/definitions/EmailAddress" } } } + }, + "SendStatusResult": { + "description": "Status of an email message that was sent previously.", + "type": "object", + "required": [ + "messageId", + "status" + ], + "properties": { + "messageId": { + "description": "System generated id of an email message sent.", + "type": "string", + "example": "F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4" + }, + "status": { + "$ref": "#/definitions/SendStatus" + } + } + }, + "SendStatus": { + "description": "The type indicating the status of a request.", + "enum": [ + "queued", + "outForDelivery", + "dropped" + ], + "type": "string", + "x-ms-enum": { + "name": "SendStatus", + "modelAsString": true, + "values": [ + { + "value": "queued", + "description": "The message has passed basic validations and has been queued to be processed further." + }, + { + "value": "outForDelivery", + "description": "The message has been processed and is now out for delivery." + }, + { + "value": "dropped", + "description": "The message could not be processed and was dropped." + } + ] + } } }, "parameters": { @@ -349,8 +424,10 @@ "name": "api-version", "description": "Version of API to invoke.", "required": true, - "type": "string", - "x-ms-parameter-location": "client" + "enum": [ + "2021-10-01-preview" + ], + "type": "string" } }, "securityDefinitions": { @@ -375,7 +452,6 @@ "description": "The communication resource, for example https://my-resource.communication.azure.com", "required": true, "type": "string", - "format": "url", "in": "path", "x-ms-skip-url-encoding": true, "x-ms-parameter-location": "client" diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/availabilitySet.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/availabilitySet.json similarity index 97% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/availabilitySet.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/availabilitySet.json index a9116ed80..41956a353 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/availabilitySet.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/availabilitySet.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ @@ -89,6 +89,9 @@ "x-ms-examples": { "Create an availability set.": { "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Create.json" + }, + "Create an availability set with Scheduled Event Policy.": { + "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Create_WithScheduledEventProfile.json" } } }, @@ -439,6 +442,10 @@ }, "x-ms-identifiers": [], "description": "The resource status information." + }, + "scheduledEventsPolicy": { + "$ref": "./computeRPCommon.json#/definitions/ScheduledEventsPolicy", + "description": "Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the availability set." } }, "description": "The instance view of a resource." diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/capacityReservation.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/capacityReservation.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/capacityReservation.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/capacityReservation.json index e35eb8a65..137ad1e8a 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/capacityReservation.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/capacityReservation.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ @@ -759,7 +759,7 @@ "id" ], "readOnly": true, - "description": "List of the subscriptions that the capacity reservation group is shared with. **Note:** Minimum api-version: 2024-03-01. Please refer to https://aka.ms/computereservationsharing for more details." + "description": "List of the subscriptions that the capacity reservation group is shared with. **Note:** Minimum api-version: 2023-09-01. Please refer to https://aka.ms/computereservationsharing for more details." } } }, @@ -768,7 +768,7 @@ "properties": { "subscriptionIds": { "type": "array", - "description": "Specifies an array of subscription resource IDs that capacity reservation group is shared with. **Note:** Minimum api-version: 2024-03-01. Please refer to https://aka.ms/computereservationsharing for more details.", + "description": "Specifies an array of subscription resource IDs that capacity reservation group is shared with. **Note:** Minimum api-version: 2023-09-01. Please refer to https://aka.ms/computereservationsharing for more details.", "items": { "$ref": "../../../common-types/v1/common.json#/definitions/SubResource" } @@ -801,7 +801,7 @@ }, "sharingProfile": { "$ref": "#/definitions/ResourceSharingProfile", - "description": "Specifies the settings to enable sharing across subscriptions for the capacity reservation group resource. Pls. keep in mind the capacity reservation group resource generally can be shared across subscriptions belonging to a single azure AAD tenant or cross AAD tenant if there is a trust relationship established between the AAD tenants. **Note:** Minimum api-version: 2024-03-01. Please refer to https://aka.ms/computereservationsharing for more details." + "description": "Specifies the settings to enable sharing across subscriptions for the capacity reservation group resource. Pls. keep in mind the capacity reservation group resource generally can be shared across subscriptions belonging to a single azure AAD tenant or cross AAD tenant if there is a trust relationship established between the AAD tenants. **Note:** Minimum api-version: 2023-09-01. Please refer to https://aka.ms/computereservationsharing for more details." } }, "description": "capacity reservation group Properties." diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/computeRPCommon.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/computeRPCommon.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/computeRPCommon.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/computeRPCommon.json index ad2441485..044f31f3e 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/computeRPCommon.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/computeRPCommon.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ @@ -867,7 +867,7 @@ }, "DetachOption": { "type": "string", - "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values are: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview** mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.", + "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values are: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview**. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.", "enum": [ "ForceDetach" ], @@ -1091,7 +1091,7 @@ }, "detachOption": { "$ref": "#/definitions/DetachOption", - "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview** mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'." + "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview**. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'." }, "deleteOption": { "$ref": "#/definitions/DeleteOption", @@ -1189,7 +1189,7 @@ "description": "Increase the value of this property allows user to reset the key used for securing communication channel between guest and host." } }, - "description": "Specifies ProxyAgent settings while creating the virtual machine. Minimum api-version: 2024-03-01." + "description": "Specifies ProxyAgent settings while creating the virtual machine. Minimum api-version: 2023-09-01." }, "SecurityProfile": { "properties": { @@ -1219,7 +1219,7 @@ }, "proxyAgentSettings": { "$ref": "#/definitions/ProxyAgentSettings", - "description": "Specifies ProxyAgent settings while creating the virtual machine. Minimum api-version: 2024-03-01." + "description": "Specifies ProxyAgent settings while creating the virtual machine. Minimum api-version: 2023-09-01." } }, "description": "Specifies the Security profile settings for the virtual machine or virtual machine scale set." @@ -1395,8 +1395,9 @@ "description": "Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell." }, "enableVMAgentPlatformUpdates": { + "readOnly": true, "type": "boolean", - "description": "Indicates whether VMAgent Platform Updates is enabled for the Windows virtual machine. Default value is false." + "description": "Indicates whether VMAgent Platform Updates are enabled for the Windows Virtual Machine." } }, "description": "Specifies Windows operating system settings on the virtual machine." diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/dedicatedHost.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/dedicatedHost.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/dedicatedHost.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/dedicatedHost.json index 7ddea6dc0..38979bc85 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/dedicatedHost.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/dedicatedHost.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/image.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/image.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/image.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/image.json index 5418b8af8..3cb4e7f14 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/image.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/image.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/logAnalytic.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/logAnalytic.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/logAnalytic.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/logAnalytic.json index 806f2d2e5..79ccdb33b 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/logAnalytic.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/logAnalytic.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/proximityPlacementGroup.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/proximityPlacementGroup.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/proximityPlacementGroup.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/proximityPlacementGroup.json index e56cadd6d..d3654134f 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/proximityPlacementGroup.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/proximityPlacementGroup.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/restorePoint.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/restorePoint.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/restorePoint.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/restorePoint.json index e2a318eb4..55fd0d89c 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/restorePoint.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/restorePoint.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/runCommand.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/runCommand.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/runCommand.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/runCommand.json index 18a93072e..59ca443a5 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/runCommand.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/runCommand.json @@ -3,7 +3,7 @@ "info": { "title": "RunCommandsClient", "description": "The Run Commands Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/sshPublicKey.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/sshPublicKey.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/sshPublicKey.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/sshPublicKey.json index 798267490..76acf6172 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/sshPublicKey.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/sshPublicKey.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachine.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachine.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachine.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachine.json index 2b8db8b31..760bbf9de 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachine.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachine.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineExtensionImage.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineExtensionImage.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineExtensionImage.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineExtensionImage.json index 972c4220f..8f339640e 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineExtensionImage.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineExtensionImage.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineImage.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineImage.json similarity index 99% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineImage.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineImage.json index 7c4a48112..2fccf328d 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineImage.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineImage.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ diff --git a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineScaleSet.json b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineScaleSet.json similarity index 98% rename from swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineScaleSet.json rename to swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineScaleSet.json index 40974f0e3..76db0f8e1 100644 --- a/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineScaleSet.json +++ b/swagger-specs/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineScaleSet.json @@ -3,7 +3,7 @@ "info": { "title": "ComputeManagementClient", "description": "The Compute Management Client.", - "version": "2024-03-01" + "version": "2024-07-01" }, "host": "management.azure.com", "schemes": [ @@ -262,6 +262,9 @@ "Create a scale set with priority mix policy": { "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPriorityMixPolicy.json" }, + "Create a scale set with sku profile": { + "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSkuProfile.json" + }, "Create a VMSS with an extension with protectedSettingsFromKeyVault": { "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithProtectedSettingsFromKeyVault.json" }, @@ -291,6 +294,9 @@ }, "Create a scale set with SecurityType as ConfidentialVM and NonPersistedTPM securityEncryptionType": { "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityTypeConfidentialVMWithNonPersistedTPM.json" + }, + "Create a scale set with zonalPlatformFaultDomainAlignMode as Aligned": { + "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithZonalPlatformFaultDomainAlignMode.json" } } }, @@ -4052,6 +4058,44 @@ }, "description": "Specifies the target splits for Spot and Regular priority VMs within a scale set with flexible orchestration mode. With this property the customer is able to specify the base number of regular priority VMs created as the VMSS flex instance scales out and the split between Spot and Regular priority VMs after this base target has been reached." }, + "SkuProfile": { + "type": "object", + "properties": { + "vmSizes": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuProfileVMSize" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "Specifies the VM sizes for the virtual machine scale set." + }, + "allocationStrategy": { + "type": "string", + "description": "Specifies the allocation strategy for the virtual machine scale set based on which the VMs will be allocated.", + "enum": [ + "LowestPrice", + "CapacityOptimized" + ], + "x-ms-enum": { + "name": "AllocationStrategy", + "modelAsString": true + } + } + }, + "description": "Specifies the sku profile for the virtual machine scale set. With this property the customer is able to specify a list of VM sizes and an allocation strategy." + }, + "SkuProfileVMSize": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Specifies the name of the VM Size." + } + }, + "description": "Specifies the VM Size." + }, "OrchestrationMode": { "type": "string", "description": "Specifies the orchestration mode for the virtual machine scale set.", @@ -5187,7 +5231,7 @@ "readOnly": true, "type": "string", "format": "date-time", - "description": "Specifies the time in which this VM profile for the Virtual Machine Scale Set was created. Minimum API version for this property is 2024-03-01. This value will be added to VMSS Flex VM tags when creating/updating the VMSS VM Profile with minimum api-version 2024-03-01." + "description": "Specifies the time in which this VM profile for the Virtual Machine Scale Set was created. This value will be added to VMSS Flex VM tags when creating/updating the VMSS VM Profile. Minimum API version for this property is 2023-09-01." } }, "description": "Describes a virtual machine scale set virtual machine profile." @@ -5335,6 +5379,14 @@ "resiliencyPolicy": { "$ref": "#/definitions/ResiliencyPolicy", "description": "Policy for Resiliency" + }, + "zonalPlatformFaultDomainAlignMode": { + "$ref": "#/definitions/ZonalPlatformFaultDomainAlignMode", + "description": "Specifies the align mode between Virtual Machine Scale Set compute and storage Fault Domain count." + }, + "skuProfile": { + "$ref": "#/definitions/SkuProfile", + "description": "Specifies the sku profile for the virtual machine scale set." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -5388,6 +5440,14 @@ "resiliencyPolicy": { "$ref": "#/definitions/ResiliencyPolicy", "description": "Policy for Resiliency" + }, + "zonalPlatformFaultDomainAlignMode": { + "$ref": "#/definitions/ZonalPlatformFaultDomainAlignMode", + "description": "Specifies the align mode between Virtual Machine Scale Set compute and storage Fault Domain count." + }, + "skuProfile": { + "$ref": "#/definitions/SkuProfile", + "description": "Specifies the sku profile for the virtual machine scale set." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -5415,7 +5475,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set" + "description": "The virtual machine scale set zones." }, "extendedLocation": { "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation", @@ -5483,6 +5543,13 @@ "identity": { "$ref": "#/definitions/VirtualMachineScaleSetIdentity", "description": "The identity of the virtual machine scale set, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set zones." } }, "allOf": [ @@ -5948,13 +6015,13 @@ }, "userData": { "type": "string", - "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here.

Minimum api-version: 2021-03-01" + "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum api-version: 2021-03-01" }, "timeCreated": { "readOnly": true, "type": "string", "format": "date-time", - "description": "Specifies the time at which the Virtual Machine resource was created.

Minimum api-version: 2021-11-01." + "description": "Specifies the time at which the Virtual Machine resource was created. Minimum api-version: 2021-11-01." } }, "description": "Describes the properties of a virtual machine scale set virtual machine." @@ -6379,6 +6446,18 @@ } }, "description": "Specifies the security posture to be used in the scale set. Minimum api-version: 2023-03-01" + }, + "ZonalPlatformFaultDomainAlignMode": { + "type": "string", + "description": "Specifies the align mode between Virtual Machine Scale Set compute and storage Fault Domain count.", + "enum": [ + "Aligned", + "Unaligned" + ], + "x-ms-enum": { + "name": "ZonalPlatformFaultDomainAlignMode", + "modelAsString": true + } } } } diff --git a/swagger-specs/compute/resource-manager/api-set.json b/swagger-specs/compute/resource-manager/api-set.json index e7ade039b..0fd9cd330 100644 --- a/swagger-specs/compute/resource-manager/api-set.json +++ b/swagger-specs/compute/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Compute/common-types/v1/common.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/computeRPCommon.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineScaleSet.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachine.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineImage.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/virtualMachineExtensionImage.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/availabilitySet.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/proximityPlacementGroup.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/dedicatedHost.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/sshPublicKey.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/image.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/restorePoint.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/capacityReservation.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/logAnalytic.json", "Microsoft.Compute/ComputeRP/stable/2024-03-01/runCommand.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskRPCommon.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/disk.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskAccess.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskEncryptionSet.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskRestorePoint.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/snapshot.json", "Microsoft.Compute/Skus/stable/2021-07-01/skus.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/galleryRPCommon.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/gallery.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/sharedGallery.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/communityGallery.json", "Microsoft.Compute/CloudserviceRP/stable/2022-09-04/cloudService.json"], "name": "package-2024-03-02"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Compute/common-types/v1/common.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/computeRPCommon.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineScaleSet.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachine.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineImage.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineExtensionImage.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/availabilitySet.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/proximityPlacementGroup.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/dedicatedHost.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/sshPublicKey.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/image.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/restorePoint.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/capacityReservation.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/logAnalytic.json", "Microsoft.Compute/ComputeRP/stable/2024-07-01/runCommand.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskRPCommon.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/disk.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskAccess.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskEncryptionSet.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/diskRestorePoint.json", "Microsoft.Compute/DiskRP/stable/2024-03-02/snapshot.json", "Microsoft.Compute/Skus/stable/2021-07-01/skus.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/galleryRPCommon.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/gallery.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/sharedGallery.json", "Microsoft.Compute/GalleryRP/stable/2023-07-03/communityGallery.json", "Microsoft.Compute/CloudserviceRP/stable/2022-09-04/cloudService.json"], "name": "package-2024-07-01"} \ No newline at end of file diff --git a/swagger-specs/computeschedule/resource-manager/Microsoft.ComputeSchedule/preview/2024-06-01-preview/computeschedule.json b/swagger-specs/computeschedule/resource-manager/Microsoft.ComputeSchedule/preview/2024-08-15-preview/computeschedule.json similarity index 86% rename from swagger-specs/computeschedule/resource-manager/Microsoft.ComputeSchedule/preview/2024-06-01-preview/computeschedule.json rename to swagger-specs/computeschedule/resource-manager/Microsoft.ComputeSchedule/preview/2024-08-15-preview/computeschedule.json index b600d7ff5..2b03268ae 100644 --- a/swagger-specs/computeschedule/resource-manager/Microsoft.ComputeSchedule/preview/2024-06-01-preview/computeschedule.json +++ b/swagger-specs/computeschedule/resource-manager/Microsoft.ComputeSchedule/preview/2024-08-15-preview/computeschedule.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "Microsoft.ComputeSchedule", - "version": "2024-06-01-preview", + "version": "2024-08-15-preview", "description": "Microsoft.ComputeSchedule Resource Provider management API.", "x-typespec-generated": [ { @@ -71,10 +71,10 @@ } }, "x-ms-examples": { - "Operations_ListMax - generated by [MaximumSet] rule": { + "Operations_ListMax - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/Operations_List_MaximumSet_Gen.json" }, - "Operations_ListMax - generated by [MinimumSet] rule": { + "Operations_ListMax - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/Operations_List_MinimumSet_Gen.json" } }, @@ -127,10 +127,10 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesCancelOperations - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesCancelOperations - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesCancelOperations_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesCancelOperations - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesCancelOperations - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesCancelOperations_MinimumSet_Gen.json" } } @@ -180,10 +180,10 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesExecuteDeallocate - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesExecuteDeallocate - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesExecuteDeallocate_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesExecuteDeallocate - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesExecuteDeallocate - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesExecuteDeallocate_MinimumSet_Gen.json" } } @@ -233,10 +233,10 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesExecuteHibernate - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesExecuteHibernate - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesExecuteHibernate_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesExecuteHibernate - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesExecuteHibernate - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesExecuteHibernate_MinimumSet_Gen.json" } } @@ -286,15 +286,68 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesExecuteStart - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesExecuteStart - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesExecuteStart_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesExecuteStart - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesExecuteStart - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesExecuteStart_MinimumSet_Gen.json" } } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ComputeSchedule/locations/{locationparameter}/virtualMachinesGetOperationErrors": { + "post": { + "operationId": "ScheduledActions_VirtualMachinesGetOperationErrors", + "description": "virtualMachinesGetOperationErrors: getOperationErrors associated with an operation on a virtual machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "locationparameter", + "in": "path", + "description": "The location name.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "name": "requestBody", + "in": "body", + "description": "The request body", + "required": true, + "schema": { + "$ref": "#/definitions/GetOperationErrorsRequest" + } + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/GetOperationErrorsResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CS_ScheduledActions_VirtualMachinesGetOperationErrors_Max": { + "$ref": "./examples/ScheduledActions_VirtualMachinesGetOperationErrors_MaximumSet_Gen.json" + }, + "CS_ScheduledActions_VirtualMachinesGetOperationErrors_Min": { + "$ref": "./examples/ScheduledActions_VirtualMachinesGetOperationErrors_MinimumSet_Gen.json" + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.ComputeSchedule/locations/{locationparameter}/virtualMachinesGetOperationStatus": { "post": { "operationId": "ScheduledActions_VirtualMachinesGetOperationStatus", @@ -339,11 +392,11 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesGetOperationStatus - generated by [MaximumSet] rule": { - "$ref": "./examples/ScheduledActions_VirtualMachinesGetOperationStatus_MaximumSet_Gen.json" - }, "ScheduledActions_VirtualMachinesGetOperationStatus - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesGetOperationStatus_MinimumSet_Gen.json" + }, + "ScheduledActions_VirtualMachinesGetOperationStatus - generated by [MinimumSet] rule - generated by [MaximumSet] rule": { + "$ref": "./examples/ScheduledActions_VirtualMachinesGetOperationStatus_MaximumSet_Gen.json" } } } @@ -392,10 +445,10 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesSubmitDeallocate - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesSubmitDeallocate - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesSubmitDeallocate_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesSubmitDeallocate - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesSubmitDeallocate - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesSubmitDeallocate_MinimumSet_Gen.json" } } @@ -445,10 +498,10 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesSubmitHibernate - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesSubmitHibernate - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesSubmitHibernate_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesSubmitHibernate - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesSubmitHibernate - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesSubmitHibernate_MinimumSet_Gen.json" } } @@ -498,10 +551,10 @@ } }, "x-ms-examples": { - "ScheduledActions_VirtualMachinesSubmitStart - generated by [MaximumSet] rule": { + "ScheduledActions_VirtualMachinesSubmitStart - generated by [MaximumSet] rule - generated by [MaximumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesSubmitStart_MaximumSet_Gen.json" }, - "ScheduledActions_VirtualMachinesSubmitStart - generated by [MinimumSet] rule": { + "ScheduledActions_VirtualMachinesSubmitStart - generated by [MaximumSet] rule - generated by [MinimumSet] rule": { "$ref": "./examples/ScheduledActions_VirtualMachinesSubmitStart_MinimumSet_Gen.json" } } @@ -699,6 +752,41 @@ } } }, + "GetOperationErrorsRequest": { + "type": "object", + "description": "This is the request to get errors per vm operations", + "properties": { + "operationIds": { + "type": "array", + "description": "The list of operation ids to query errors of", + "items": { + "type": "string" + } + } + }, + "required": [ + "operationIds" + ] + }, + "GetOperationErrorsResponse": { + "type": "object", + "description": "This is the response from a get operations errors request", + "properties": { + "results": { + "type": "array", + "description": "An array of operationids and their corresponding errors if any", + "items": { + "$ref": "#/definitions/OperationErrorsResult" + }, + "x-ms-identifiers": [ + "operationId" + ] + } + }, + "required": [ + "results" + ] + }, "GetOperationStatusRequest": { "type": "object", "description": "This is the request to get operation status using operationids", @@ -776,6 +864,77 @@ "location" ] }, + "OperationErrorDetails": { + "type": "object", + "description": "This defines a list of operation errors associated with a unique operationId", + "properties": { + "errorCode": { + "type": "string", + "description": "The error code of the operation" + }, + "errorDetails": { + "type": "string", + "format": "date-time", + "description": "The error details of the operation" + }, + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The timestamp of the error occurence" + }, + "crpOperationId": { + "type": "string", + "description": "CRP operationid of the operation for deeper analysis" + } + }, + "required": [ + "errorCode", + "errorDetails", + "timeStamp", + "crpOperationId" + ] + }, + "OperationErrorsResult": { + "type": "object", + "description": "This is the first level of operation errors from the request when clients get errors per vm operation", + "properties": { + "operationId": { + "type": "string", + "description": "The operationId identifying a vm operation" + }, + "creationTime": { + "type": "string", + "format": "date-time", + "description": "The creation time of the error result" + }, + "activationTime": { + "type": "string", + "format": "date-time", + "description": "The activation time of a vm operation" + }, + "completedAt": { + "type": "string", + "format": "date-time", + "description": "The completion time of the operation if the operation was completed" + }, + "operationErrors": { + "type": "array", + "description": "A list of errors associated with the operationid", + "items": { + "$ref": "#/definitions/OperationErrorDetails" + }, + "x-ms-identifiers": [] + }, + "requestErrorCode": { + "type": "string", + "description": "Request level error code" + }, + "requestErrorDetails": { + "type": "string", + "description": "Request level error details" + } + } + }, "OperationState": { "type": "string", "description": "Values that define the states of operations in Scheduled Actions", diff --git a/swagger-specs/computeschedule/resource-manager/api-set.json b/swagger-specs/computeschedule/resource-manager/api-set.json index ddac9728a..d518e49e4 100644 --- a/swagger-specs/computeschedule/resource-manager/api-set.json +++ b/swagger-specs/computeschedule/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.ComputeSchedule/preview/2024-06-01-preview/computeschedule.json"], "name": "package-2024-06-01-preview"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.ComputeSchedule/preview/2024-08-15-preview/computeschedule.json"], "name": "package-2024-08-15-preview"} \ No newline at end of file diff --git a/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption.json b/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2024-08-01/consumption.json similarity index 99% rename from swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption.json rename to swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2024-08-01/consumption.json index d118b5714..d72d22697 100644 --- a/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption.json +++ b/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2024-08-01/consumption.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "version": "2023-11-01", + "version": "2024-08-01", "title": "ConsumptionManagementClient", "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." }, @@ -1088,6 +1088,9 @@ "ReservationRecommendationsByBillingAccount-Legacy": { "$ref": "./examples/ReservationRecommendationsByBillingAccount.json" }, + "ReservationRecommendationsByBillingAccountFilterForScope": { + "$ref": "./examples/ReservationRecommendationsByBillingAccountFilterByScope.json" + }, "ReservationRecommendationsByBillingProfile-Modern": { "$ref": "./examples/ReservationRecommendationsByBillingProfile.json" } @@ -3411,7 +3414,7 @@ "readOnly": true }, "reservationOrderTerm": { - "description": "Term period of the reservation, ex: P1Y or P3Y.", + "description": "Term period of the reservation. ex: P1M, P1Y or P3Y.", "type": "string", "readOnly": true }, @@ -3575,7 +3578,7 @@ "readOnly": true }, "term": { - "description": "RI recommendations in one or three year terms.", + "description": "Term period of the reservation. ex: P1M, P1Y or P3Y.", "type": "string", "readOnly": true }, @@ -3747,7 +3750,7 @@ "readOnly": true }, "term": { - "description": "RI recommendations in one or three year terms.", + "description": "Term period of the reservation. ex: P1M, P1Y or P3Y.", "type": "string", "readOnly": true }, @@ -5044,7 +5047,7 @@ } }, "ErrorResponse": { - "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header. \n\n * 504 Gateway Timeout - Service timed out while processing the request. Reduce the date range in the request, if possible.", "type": "object", "properties": { "error": { @@ -6011,6 +6014,7 @@ "name": "term", "x-ms-parameter-location": "method", "enum": [ + "P1M", "P1Y", "P3Y" ], @@ -6018,6 +6022,11 @@ "name": "term", "modelAsString": true, "values": [ + { + "value": "P1M", + "description": "1 month reservation term", + "name": "P1M" + }, { "value": "P1Y", "description": "1 year reservation term", diff --git a/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json b/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2024-08-01/consumption_pricesheet.json similarity index 99% rename from swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json rename to swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2024-08-01/consumption_pricesheet.json index 7b3c8a451..4a15309c5 100644 --- a/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json +++ b/swagger-specs/consumption/resource-manager/Microsoft.Consumption/stable/2024-08-01/consumption_pricesheet.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "version": "2023-11-01", + "version": "2024-08-01", "title": "ConsumptionManagementClient", "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." }, diff --git a/swagger-specs/consumption/resource-manager/api-set.json b/swagger-specs/consumption/resource-manager/api-set.json index b5cf818d2..74f9b31d9 100644 --- a/swagger-specs/consumption/resource-manager/api-set.json +++ b/swagger-specs/consumption/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Consumption/stable/2023-11-01/consumption.json", "Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json"], "name": "package-2023-11"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Consumption/stable/2024-08-01/consumption_pricesheet.json", "Microsoft.Consumption/stable/2024-08-01/consumption.json"], "name": "package-2024-08"} \ No newline at end of file diff --git a/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index 71dc94ec3..d4eaab730 100644 --- a/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -992,6 +992,36 @@ "location" ] }, + "IcebergDataset": { + "x-ms-discriminator-value": "Iceberg", + "description": "Iceberg dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Iceberg dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/IcebergDatasetTypeProperties" + } + } + }, + "IcebergDatasetTypeProperties": { + "description": "Iceberg dataset properties.", + "type": "object", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the iceberg storage. Setting a file name is not allowed for iceberg format." + } + }, + "required": [ + "location" + ] + }, "AzureBlobDataset": { "x-ms-discriminator-value": "AzureBlob", "description": "The Azure Blob storage.", diff --git a/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index 8d62b404c..ccdb8b731 100644 --- a/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -26,6 +26,10 @@ "type": "string", "description": "Type of linked service." }, + "version": { + "type": "string", + "description": "Version of the linked service." + }, "connectVia": { "description": "The integration runtime reference.", "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" @@ -3796,6 +3800,19 @@ "type": "object", "x-ms-format": "dfe-string", "description": "The scope of the access required. It describes what kind of access will be requested. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "type": "object", + "x-ms-format": "dfe-string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalEmbeddedCert": { + "description": "Specify the base64 encoded certificate of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalEmbeddedCertPassword": { + "description": "Specify the password of your certificate if your certificate has a password and you are using AadServicePrincipal authentication. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" } }, "required": [ @@ -8081,6 +8098,19 @@ "description": "The client secret of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "servicePrincipalCredentialType": { + "type": "object", + "x-ms-format": "dfe-string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalEmbeddedCert": { + "description": "Specify the base64 encoded certificate of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalEmbeddedCertPassword": { + "description": "Specify the password of your certificate if your certificate has a password and you are using AadServicePrincipal authentication. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, "encryptedCredential": { "type": "string", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string." @@ -8089,8 +8119,7 @@ "required": [ "siteUrl", "tenantId", - "servicePrincipalId", - "servicePrincipalKey" + "servicePrincipalId" ] }, "AzureSynapseArtifactsLinkedService": { diff --git a/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index 3a38134eb..4c8943de6 100644 --- a/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/swagger-specs/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -1597,6 +1597,16 @@ "modelAsString": true } }, + "IcebergWriteSettings": { + "description": "Iceberg write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": {} + }, "AvroSource": { "description": "A copy activity Avro source.", "type": "object", @@ -4766,6 +4776,25 @@ } } }, + "IcebergSink": { + "description": "A copy activity Iceberg sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Iceberg store settings." + }, + "formatSettings": { + "$ref": "#/definitions/IcebergWriteSettings", + "description": "Iceberg format settings." + } + } + }, "BlobSink": { "description": "A copy activity Azure Blob sink.", "type": "object", diff --git a/swagger-specs/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json b/swagger-specs/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json index ad15d6759..5e58d359d 100644 --- a/swagger-specs/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json +++ b/swagger-specs/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json @@ -8067,6 +8067,48 @@ "storageDiagnostics" ] }, + "StorageBlobAccessTier": { + "type": "string", + "description": "The access tier of the blob.", + "enum": [ + "Hot", + "Cool", + "Cold", + "Archive", + "Default" + ], + "x-ms-enum": { + "name": "StorageBlobAccessTier", + "modelAsString": true, + "values": [ + { + "name": "Hot", + "value": "Hot", + "description": "The blob is in access tier Hot" + }, + { + "name": "Cool", + "value": "Cool", + "description": "The blob is in access tier Cool" + }, + { + "name": "Cold", + "value": "Cold", + "description": "The blob is in access tier Cold" + }, + { + "name": "Archive", + "value": "Archive", + "description": "The blob is in access tier Archive" + }, + { + "name": "Default", + "value": "Default", + "description": "The blob is in access tier Default(Inferred)" + } + ] + } + }, "StorageBlobCreatedEventData": { "type": "object", "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobCreated event.", @@ -8105,6 +8147,10 @@ "type": "string", "description": "The type of blob." }, + "accessTier": { + "$ref": "#/definitions/StorageBlobAccessTier", + "description": "The current tier of the blob." + }, "url": { "type": "string", "description": "The path to the blob." @@ -8124,6 +8170,7 @@ } }, "required": [ + "accessTier", "storageDiagnostics" ] }, @@ -8279,6 +8326,14 @@ "type": "string", "description": "The type of blob." }, + "accessTier": { + "$ref": "#/definitions/StorageBlobAccessTier", + "description": "The current tier of the blob." + }, + "previousTier": { + "$ref": "#/definitions/StorageBlobAccessTier", + "description": "The previous tier of the blob." + }, "url": { "type": "string", "description": "The path to the blob." @@ -8298,6 +8353,8 @@ } }, "required": [ + "accessTier", + "previousTier", "storageDiagnostics" ] }, diff --git a/swagger-specs/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json b/swagger-specs/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json index 2e4f9a09a..6f3d7dfa8 100644 --- a/swagger-specs/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json +++ b/swagger-specs/eventgrid/data-plane/Microsoft.Storage/stable/2018-01-01/Storage.json @@ -7,6 +7,48 @@ }, "paths": {}, "definitions": { + "StorageBlobAccessTier": { + "type": "string", + "description": "The access tier of the blob.", + "enum": [ + "Hot", + "Cool", + "Cold", + "Archive", + "Default" + ], + "x-ms-enum": { + "name": "StorageBlobAccessTier", + "modelAsString": true, + "values": [ + { + "name": "Hot", + "value": "Hot", + "description": "The blob is in access tier Hot" + }, + { + "name": "Cool", + "value": "Cool", + "description": "The blob is in access tier Cool" + }, + { + "name": "Cold", + "value": "Cold", + "description": "The blob is in access tier Cold" + }, + { + "name": "Archive", + "value": "Archive", + "description": "The blob is in access tier Archive" + }, + { + "name": "Default", + "value": "Default", + "description": "The blob is in access tier Default(Inferred)" + } + ] + } + }, "StorageBlobCreatedEventData": { "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobCreated event.", "type": "object", @@ -45,6 +87,10 @@ "description": "The type of blob.", "type": "string" }, + "accessTier": { + "$ref": "#/definitions/StorageBlobAccessTier", + "description": "The current tier of the blob." + }, "url": { "description": "The path to the blob.", "type": "string" @@ -61,7 +107,10 @@ "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", "type": "object" } - } + }, + "required": [ + "accessTier" + ] }, "StorageBlobDeletedEventData": { "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobDeleted event.", @@ -325,6 +374,14 @@ "description": "The type of blob.", "type": "string" }, + "accessTier": { + "$ref": "#/definitions/StorageBlobAccessTier", + "description": "The current tier of the blob." + }, + "previousTier": { + "$ref": "#/definitions/StorageBlobAccessTier", + "description": "The previous tier of the blob." + }, "url": { "description": "The path to the blob.", "type": "string" @@ -341,7 +398,11 @@ "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", "type": "object" } - } + }, + "required": [ + "accessTier", + "previousTier" + ] }, "StorageAsyncOperationInitiatedEventData": { "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.AsyncOperationInitiated event.", diff --git a/swagger-specs/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json b/swagger-specs/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json index 394051baa..e58eddf17 100644 --- a/swagger-specs/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json +++ b/swagger-specs/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json @@ -542,6 +542,9 @@ } ], "responses": { + "200": { + "description": "The request has succeeded." + }, "202": { "description": "Resource operation accepted.", "headers": { @@ -648,6 +651,9 @@ } ], "responses": { + "200": { + "description": "The request has succeeded." + }, "202": { "description": "Resource operation accepted.", "headers": { @@ -717,6 +723,7 @@ } }, "required": [ + "properties", "sku" ], "allOf": [ diff --git a/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2023-12-10-preview/cloudhsm.json b/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2023-12-10-preview/cloudhsm.json new file mode 100644 index 000000000..b30fe9ca6 --- /dev/null +++ b/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2023-12-10-preview/cloudhsm.json @@ -0,0 +1,980 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Cloud HSM Resource Provider", + "description": "The Azure management API provides a RESTful set of web services that interact with Azure Cloud HSM RP.", + "version": "2023-12-10-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}": { + "put": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusters_CreateOrUpdate", + "description": "Create or Update a Cloud HSM Cluster in the specified subscription.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "original-uri" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CloudHsmCluster" + }, + "description": "Parameters to create Cloud HSM Cluster" + } + ], + "responses": { + "200": { + "description": "Created or Update Cloud HSM Cluster", + "schema": { + "$ref": "#/definitions/CloudHsmCluster" + } + }, + "201": { + "description": "Created or Update Cloud HSM Cluster", + "schema": { + "$ref": "#/definitions/CloudHsmCluster" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmCluster_CreateOrUpdate_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmCluster_CreateOrUpdate_MaximumSet_Gen.json" + } + } + }, + "patch": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusters_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Update a Cloud HSM Cluster in the specified subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CloudHsmClusterPatchParameters" + }, + "description": "Parameters to create Cloud HSM Cluster" + } + ], + "responses": { + "200": { + "description": "Patched Cloud HSM Cluster", + "schema": { + "$ref": "#/definitions/CloudHsmCluster" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmCluster_Update_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmCluster_Update_MaximumSet_Gen.json" + } + } + }, + "get": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusters_Get", + "description": "Gets the specified Cloud HSM Cluster", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Retrieved Cloud HSM Cluster", + "schema": { + "$ref": "#/definitions/CloudHsmCluster" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmCluster_Get_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmCluster_Get_MaximumSet_Gen.json" + } + } + }, + "delete": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusters_Delete", + "description": "Deletes the specified Cloud HSM Cluster", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK Response." + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmCluster_Delete_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmCluster_Delete_MaximumSet_Gen.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters": { + "get": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusters_ListByResourceGroup", + "description": "The List operation gets information about the Cloud HSM Clusters associated with the subscription and within the specified resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "in": "query", + "name": "$skiptoken", + "type": "string", + "required": false, + "description": "The page-continuation token to use with a paged version of this API" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all Cloud HSM Clusters in the specified resource group.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CloudHsmCluster_ListByResourceGroup_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmCluster_ListByResourceGroup_MaximumSet_Gen.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters": { + "get": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusters_ListBySubscription", + "description": "The List operation gets information about the Cloud HSM Clusters associated with the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "in": "query", + "name": "$skiptoken", + "type": "string", + "required": false, + "description": "The page-continuation token to use with a paged version of this API" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Get information about all Cloud HSM Clusters in the specified subscription.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CloudHsmCluster_ListBySubscription_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmCluster_ListBySubscription_MaximumSet_Gen.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateLinkResources": { + "get": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusterPrivateLinkResources_ListByCloudHsmCluster", + "description": "Gets the private link resources supported for the Cloud Hsm Cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmClusterPrivateLinkResources_ListByResource_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmClusterPrivateLinkResource_ListByCloudHsmCluster_MaximumSet_Gen.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateEndpointConnections/{peConnectionName}": { + "put": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusterPrivateEndpointConnections_Create", + "description": "Creates or updates the private endpoint connection for the Cloud Hsm Cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/peConnectionName" + }, + { + "in": "body", + "name": "properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters of the PrivateEndpointConnection" + } + ], + "responses": { + "200": { + "description": "OK -- Create or Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmClusterPrivateEndpointConnection_Create_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmClusterPrivateEndpointConnection_Create_MaximumSet_Gen.json" + } + } + }, + "delete": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusterPrivateEndpointConnections_Delete", + "description": "Deletes the private endpoint connection for the Cloud Hsm Cluster.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/peConnectionName" + } + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully deleted." + }, + "202": { + "description": "The private endpoint connection is being deleted.", + "headers": { + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmClusterPrivateEndpointConnection_Delete_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmClusterPrivateEndpointConnection_Delete_MaximumSet_Gen.json" + } + } + }, + "get": { + "tags": [ + "" + ], + "operationId": "CloudHsmClusterPrivateEndpointConnections_Get", + "description": "Gets the private endpoint connection for the Cloud Hsm Cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/peConnectionName" + } + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-examples": { + "CloudHsmClusterPrivateEndpointConnection_Get_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmClusterPrivateEndpointConnection_Get_MaximumSet_Gen.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/{cloudHsmClusterName}/privateEndpointConnections": { + "get": { + "tags": [ + "" + ], + "operationId": "PrivateEndpointConnections_ListByCloudHsmCluster", + "description": "The List operation gets information about the private endpoint connections associated with the Cloud HSM Cluster", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/cloudHsmClusterName" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of all CloudHsmCluster private endpoint connections associated with the Cloud HSM Cluster.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudHsmClusterError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CloudHsmClusterPrivateEndpointConnection_ListByResource_MaximumSet_Gen": { + "$ref": "./examples/CloudHsmClusterPrivateEndpointConnection_ListByCloudHsmCluster_MaximumSet_Gen.json" + } + } + } + } + }, + "definitions": { + "CloudHsmProperties": { + "type": "object", + "description": "The Cloud HSM Properties", + "properties": { + "fqdn": { + "type": "string", + "description": "FQDN of the Cloud HSM" + }, + "state": { + "type": "string", + "description": "The Cloud HSM State" + }, + "stateMessage": { + "type": "string", + "description": "The Cloud HSM State message" + } + } + }, + "CloudHsmCluster": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CloudHsmClusterProperties", + "description": "Properties of the Cloud HSM Cluster" + } + }, + "allOf": [ + { + "$ref": "#/definitions/CloudHsmClusterResource" + } + ], + "description": "Resource information with extended details.", + "type": "object" + }, + "CloudHsmClusterResource": { + "properties": { + "sku": { + "$ref": "#/definitions/CloudHsmClusterSku", + "description": "SKU details" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "description": "Cloud HSM Cluster Resource", + "type": "object", + "x-ms-azure-resource": true + }, + "CloudHsmClusterProperties": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The Cloud HSM Cluster's provisioningState", + "enum": [ + "Provisioning", + "Succeeded", + "Failed", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "autoGeneratedDomainNameLabelScope": { + "type": "string", + "description": "The Cloud HSM Cluster's auto-generated Domain Name Label Scope" + }, + "securityDomain": { + "$ref": "#/definitions/CloudHsmClusterSecurityDomainProperties" + }, + "hsms": { + "type": "array", + "description": "An array of Cloud HSM Cluster's HSMs", + "x-ms-identifiers": [ + "fqdn" + ], + "items": { + "$ref": "#/definitions/CloudHsmProperties" + } + }, + "publicNetworkAccess": { + "type": "string", + "description": "The Cloud HSM Cluster public network access" + }, + "privateEndpointConnections": { + "type": "array", + "description": "List of private endpoint connection resources", + "x-ms-identifiers": [ + "name" + ], + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "statusMessage": { + "type": "string", + "description": "Cloud HSM Cluster status message", + "readOnly": true + }, + "restoreProperties": { + "$ref": "#/definitions/RestoreProperties" + }, + "backupProperties": { + "$ref": "#/definitions/BackupProperties" + } + }, + "description": "Properties of a Cloud HSM Cluster.", + "type": "object" + }, + "CloudHsmClusterPatchParameters": { + "properties": { + "tags": { + "type": "object", + "description": "The Cloud HSM Cluster's tags", + "additionalProperties": { + "type": "string", + "description": "The Cloud HSM Cluster's tag's additional properties" + } + }, + "sku": { + "$ref": "#/definitions/CloudHsmClusterSku", + "description": "SKU details" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "Properties of the Cloud HSM Cluster", + "properties": { + "backupProperties": { + "$ref": "#/definitions/BackupProperties" + } + } + } + }, + "description": "Patchable properties of the Cloud HSM Cluster", + "type": "object" + }, + "CloudHsmClusterSecurityDomainProperties": { + "type": "object", + "description": "Security domain properties information for Cloud HSM cluster", + "properties": { + "fipsState": { + "format": "int32", + "type": "integer", + "description": "FIPS state information for security domain" + }, + "activationStatus": { + "type": "string", + "description": "status of security domain activation" + } + } + }, + "CloudHsmClusterSku": { + "type": "object", + "description": "Cloud Hsm Cluster SKU information", + "required": [ + "name", + "family" + ], + "properties": { + "family": { + "type": "string", + "description": "Sku family of the Cloud HSM Cluster", + "enum": [ + "B" + ], + "x-ms-client-default": "B", + "x-ms-enum": { + "name": "CloudHsmClusterSkuFamily", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "Sku name of the Cloud HSM Cluster", + "enum": [ + "Standard_B1", + "Standard B10" + ], + "x-ms-enum": { + "name": "CloudHsmClusterSkuName", + "modelAsString": false + } + }, + "capacity": { + "format": "int32", + "type": "integer", + "description": "Sku capacity" + } + } + }, + "BackupProperties": { + "type": "object", + "description": "Cloud Hsm Cluster backup information", + "properties": { + "azureStorageResourceUri": { + "type": "string", + "description": "Azure storage Resource Uri" + }, + "lastBackupDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Last Date Time that Customer Enabled Backup was taken" + }, + "lastBackupStatus": { + "type": "string", + "readOnly": true, + "description": "Status of last backup" + } + } + }, + "RestoreProperties": { + "type": "object", + "description": "Cloud Hsm Cluster restore information", + "properties": { + "foldername": { + "type": "string", + "description": "Directory name in Azure Storage Blob where the backup is stored" + }, + "azureStorageResourceUri": { + "type": "string", + "description": "Azure Blob storage container Uri" + } + } + }, + "CloudHsmClusterError": { + "properties": { + "error": { + "$ref": "#/definitions/CHsmError" + } + }, + "description": "The Cloud HSM Cluster error details", + "type": "object" + }, + "CHsmError": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + } + }, + "type": "object", + "description": "Error details" + }, + "CloudHsmClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudHsmCluster" + }, + "description": "The list of Cloud HSM Clusters." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of Cloud HSM Clusters." + } + }, + "description": "List of Cloud HSM Clusters", + "type": "object" + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "etag": { + "type": "string", + "description": "Modified whenever there is a change in the state of private endpoint connection." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "The private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpoint", + "description": "The private endpoint resource." + }, + "privateLinkServiceConnectionState": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "groupIds": { + "description": "The group ids for the private endpoint resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the private endpoint connection." + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed", + "Updating", + "InternalError", + "Canceled" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections.", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of private endpoint connections." + } + }, + "description": "List of private endpoint connections associated with the specified resource." + } + }, + "parameters": { + "cloudHsmClusterName": { + "name": "cloudHsmClusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Cloud HSM Cluster within the specified resource group. Cloud HSM Cluster names must be between 3 and 24 characters in length.", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "peConnectionName": { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private endpoint connection associated with the Cloud HSM Cluster.", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + } + } +} diff --git a/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json b/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/stable/2021-11-30/dedicatedhsm.json similarity index 69% rename from swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json rename to swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/stable/2021-11-30/dedicatedhsm.json index dccd39add..9edc4b411 100644 --- a/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json +++ b/swagger-specs/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/stable/2021-11-30/dedicatedhsm.json @@ -3,7 +3,7 @@ "info": { "title": "Azure Dedicated HSM Resource Provider", "description": "The Azure management API provides a RESTful set of web services that interact with Azure Dedicated HSM RP.", - "version": "2018-10-31-preview" + "version": "2021-11-30" }, "host": "management.azure.com", "schemes": [ @@ -62,7 +62,10 @@ }, "x-ms-examples": { "Get a list of Dedicated HSM operations": { - "$ref": "./examples//DedicatedHsm_OperationsList.json" + "$ref": "./examples/DedicatedHsm_OperationsList.json" + }, + "Get a list of Payment HSM operations": { + "$ref": "./examples/PaymentHsm_OperationsList.json" } }, "x-ms-pageable": { @@ -107,7 +110,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -132,10 +135,13 @@ }, "x-ms-examples": { "Create a new or update an existing dedicated HSM": { - "$ref": "./examples//DedicatedHsm_CreateOrUpdate.json" + "$ref": "./examples/DedicatedHsm_CreateOrUpdate.json" }, "Create a new or update an existing payment HSM": { - "$ref": "./examples//PaymentHsm_CreateOrUpdate.json" + "$ref": "./examples/PaymentHsm_CreateOrUpdate.json" + }, + "Create a new or update an existing payment HSM with management profile": { + "$ref": "./examples/PaymentHsm_CreateOrUpdate_WithManagementProfile.json" } } }, @@ -176,7 +182,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -195,10 +201,10 @@ }, "x-ms-examples": { "Update an existing dedicated HSM": { - "$ref": "./examples//DedicatedHsm_Update.json" + "$ref": "./examples/DedicatedHsm_Update.json" }, "Update an existing payment HSM": { - "$ref": "./examples//PaymentHsm_Update.json" + "$ref": "./examples/PaymentHsm_Update.json" } } }, @@ -228,7 +234,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -250,7 +256,7 @@ }, "x-ms-examples": { "Delete a dedicated HSM": { - "$ref": "./examples//DedicatedHsm_Delete.json" + "$ref": "./examples/DedicatedHsm_Delete.json" } } }, @@ -279,7 +285,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -298,10 +304,13 @@ }, "x-ms-examples": { "Get a dedicated HSM": { - "$ref": "./examples//DedicatedHsm_Get.json" + "$ref": "./examples/DedicatedHsm_Get.json" }, "Get a payment HSM": { - "$ref": "./examples//PaymentHsm_Get.json" + "$ref": "./examples/PaymentHsm_Get.json" + }, + "Get a payment HSM with 2018-10-31Preview api version": { + "$ref": "./examples/PaymentHsm_Get_With_2018-10-31Preview_Version.json" } } } @@ -332,7 +341,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -354,7 +363,10 @@ }, "x-ms-examples": { "List dedicated HSM devices in a resource group": { - "$ref": "./examples//DedicatedHsm_ListByResourceGroup.json" + "$ref": "./examples/DedicatedHsm_ListByResourceGroup.json" + }, + "List dedicated HSM devices in a resource group including payment HSM": { + "$ref": "./examples/PaymentHsm_ListByResourceGroup.json" } } } @@ -378,7 +390,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -397,7 +409,64 @@ }, "x-ms-examples": { "List dedicated HSM devices in a subscription": { - "$ref": "./examples//DedicatedHsm_ListBySubscription.json" + "$ref": "./examples/DedicatedHsm_ListBySubscription.json" + }, + "List dedicated HSM devices in a subscription including payment HSM": { + "$ref": "./examples/PaymentHsm_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}/outboundNetworkDependenciesEndpoints": { + "get": { + "tags": [ + "DedicatedHsms" + ], + "operationId": "DedicatedHsm_ListOutboundNetworkDependenciesEndpoints", + "summary": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified dedicated hsm resource.", + "description": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified dedicated hsm resource. The operation returns properties of each egress endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Resource Group to which the dedicated hsm belongs." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated HSM." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OutboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DedicatedHsmError" + } + } + }, + "x-ms-examples": { + "List OutboundNetworkDependenciesEndpoints by Managed Cluster": { + "$ref": "./examples/GetOutboundNetworkDependenciesEndpointsList.json" } }, "x-ms-pageable": { @@ -417,9 +486,13 @@ }, "isDataAction": { "description": "Gets or sets a value indicating whether it is a data plane action", - "type": "string", + "type": "boolean", "readOnly": true }, + "origin": { + "description": "The origin of the operation", + "type": "string" + }, "display": { "properties": { "provider": { @@ -438,11 +511,14 @@ "description": "The object that represents the operation.", "type": "string" } - } + }, + "description": "The display string.", + "type": "object" } } }, "DedicatedHsmOperationListResult": { + "type": "object", "description": "Result of the request to list Dedicated HSM Provider operations. It contains a list of operations.", "properties": { "value": { @@ -450,6 +526,9 @@ "items": { "$ref": "#/definitions/DedicatedHsmOperation" }, + "x-ms-identifiers": [ + "name" + ], "description": "List of Dedicated HSM Resource Provider operations." } } @@ -461,7 +540,8 @@ "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..." } }, - "description": "The API entity reference." + "description": "The API entity reference.", + "type": "object" }, "NetworkInterface": { "properties": { @@ -475,7 +555,8 @@ "description": "Private Ip address of the interface" } }, - "description": "The network interface definition." + "description": "The network interface definition.", + "type": "object" }, "NetworkProfile": { "properties": { @@ -490,9 +571,12 @@ }, "description": "Specifies the list of resource Ids for the network interfaces associated with the dedicated HSM." } - } + }, + "description": "The network profile definition.", + "type": "object" }, "Sku": { + "type": "object", "description": "SKU of the dedicated HSM", "properties": { "name": { @@ -550,6 +634,10 @@ "$ref": "#/definitions/NetworkProfile", "description": "Specifies the network interfaces of the dedicated hsm." }, + "managementNetworkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the management network interfaces of the dedicated hsm." + }, "stampId": { "type": "string", "description": "This field will be used when RP does not support Availability zones." @@ -608,10 +696,15 @@ } } }, - "description": "Properties of the dedicated hsm" + "description": "Properties of the dedicated hsm", + "type": "object" }, "DedicatedHsm": { "properties": { + "systemData": { + "description": "Metadata pertaining to creation and last modification of the resource", + "$ref": "#/definitions/SystemData" + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/DedicatedHsmProperties", @@ -620,7 +713,7 @@ }, "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/DedicatedHsmResource" } ], "required": [ @@ -628,7 +721,8 @@ "sku", "properties" ], - "description": "Resource information with extended details." + "description": "Resource information with extended details.", + "type": "object" }, "DedicatedHsmPatchParameters": { "properties": { @@ -640,7 +734,8 @@ "description": "Resource tags" } }, - "description": "Patchable properties of the dedicated HSM" + "description": "Patchable properties of the dedicated HSM", + "type": "object" }, "DedicatedHsmListResult": { "properties": { @@ -656,14 +751,15 @@ "description": "The URL to get the next set of dedicated hsms." } }, - "description": "List of dedicated HSMs" + "description": "List of dedicated HSMs", + "type": "object" }, "ResourceListResult": { "properties": { "value": { "type": "array", "items": { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/DedicatedHsmResource" }, "description": "The list of dedicated HSM resources." }, @@ -672,16 +768,19 @@ "description": "The URL to get the next set of dedicated HSM resources." } }, - "description": "List of dedicated HSM resources." + "description": "List of dedicated HSM resources.", + "type": "object" }, "DedicatedHsmError": { "properties": { "error": { + "description": "The error detail of the operation if any.", "readOnly": true, "$ref": "#/definitions/Error" } }, - "description": "The error exception." + "description": "The error exception.", + "type": "object" }, "Error": { "properties": { @@ -696,14 +795,17 @@ "description": "The error message." }, "innererror": { + "description": "Contains more specific error that narrows down the cause. May be null.", "x-ms-client-name": "innerError", "readOnly": true, "$ref": "#/definitions/Error" } }, - "description": "The key vault server error." + "description": "The key vault server error.", + "type": "object" }, - "Resource": { + "DedicatedHsmResource": { + "type": "object", "properties": { "id": { "readOnly": true, @@ -722,7 +824,11 @@ }, "location": { "type": "string", - "description": "The supported Azure location where the dedicated HSM should be created." + "description": "The supported Azure location where the dedicated HSM should be created.", + "x-ms-mutability": [ + "create", + "read" + ] }, "sku": { "$ref": "#/definitions/Sku", @@ -748,16 +854,137 @@ "location" ], "x-ms-azure-resource": true + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of dedicated hsm resource.", + "type": "object", + "readOnly": true, + "properties": { + "createdBy": { + "type": "string", + "description": "The identity that created dedicated hsm resource." + }, + "createdByType": { + "description": "The type of identity that created dedicated hsm resource.", + "$ref": "#/definitions/IdentityType" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of dedicated hsm resource creation (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified dedicated hsm resource." + }, + "lastModifiedByType": { + "description": "The type of identity that last modified dedicated hsm resource.", + "$ref": "#/definitions/IdentityType" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of dedicated hsm resource last modification (UTC)." + } + } + }, + "IdentityType": { + "type": "string", + "description": "The type of identity.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "identityType", + "modelAsString": true + } + }, + "OutboundEnvironmentEndpointCollection": { + "description": "Collection of OutboundEnvironmentEndpoint", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "OutboundEnvironmentEndpoint": { + "description": "Egress endpoints which dedicated hsm service connects to for common purpose.", + "type": "object", + "properties": { + "category": { + "description": "The category of endpoints accessed by the dedicated hsm service, e.g. azure-resource-management, apiserver, etc.", + "type": "string" + }, + "endpoints": { + "description": "The endpoints that dedicated hsm service connects to", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDependency" + }, + "x-ms-identifiers": [] + } + } + }, + "EndpointDependency": { + "description": "A domain name that dedicated hsm services are reaching at.", + "type": "object", + "properties": { + "domainName": { + "description": "The domain name of the dependency.", + "type": "string" + }, + "endpointDetails": { + "description": "The Ports and Protocols used when connecting to domainName.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointDetail" + }, + "x-ms-identifiers": [] + } + } + }, + "EndpointDetail": { + "description": "Connect information from the dedicated hsm service to a single endpoint.", + "type": "object", + "properties": { + "ipAddress": { + "description": "An IP Address that Domain Name currently resolves to.", + "type": "string" + }, + "port": { + "format": "int32", + "description": "The port an endpoint is connected to.", + "type": "integer" + }, + "protocol": { + "description": "The protocol used for connection", + "type": "string" + }, + "description": { + "description": "Description of the detail", + "type": "string" + } + } } }, "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/swagger-specs/hardwaresecuritymodules/resource-manager/api-set.json b/swagger-specs/hardwaresecuritymodules/resource-manager/api-set.json index 3c79ec95e..d1cfc5268 100644 --- a/swagger-specs/hardwaresecuritymodules/resource-manager/api-set.json +++ b/swagger-specs/hardwaresecuritymodules/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json"], "name": "package-2018-10"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.HardwareSecurityModules/preview/2023-12-10-preview/cloudhsm.json", "Microsoft.HardwareSecurityModules/stable/2021-11-30/dedicatedhsm.json"], "name": "package-2023-12-preview"} \ No newline at end of file diff --git a/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-12-27/HybridCompute.json b/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2024-07-10/HybridCompute.json similarity index 61% rename from swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-12-27/HybridCompute.json rename to swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2024-07-10/HybridCompute.json index 35fe24b6e..2aded4173 100644 --- a/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-12-27/HybridCompute.json +++ b/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2024-07-10/HybridCompute.json @@ -3,7 +3,7 @@ "info": { "title": "HybridComputeManagementClient", "description": "The Hybrid Compute Management Client.", - "version": "2022-12-27" + "version": "2024-07-10" }, "host": "management.azure.com", "schemes": [ @@ -34,13 +34,13 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}": { - "put": { + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/validateLicense": { + "post": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_CreateOrUpdate", - "description": "The operation to create or update a hybrid machine. Please note some properties can be set only during machine creation.", + "operationId": "Licenses_ValidateLicense", + "description": "The operation to validate a license.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" @@ -48,34 +48,21 @@ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "name": "machineName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the hybrid machine." - }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Machine" + "$ref": "#/definitions/License" }, - "description": "Parameters supplied to the Create hybrid machine operation." + "description": "Parameters supplied to the license validation operation." } ], "responses": { "200": { - "description": "OK", + "description": "Updated Resource", "schema": { - "$ref": "#/definitions/Machine" + "$ref": "#/definitions/License" } }, "default": { @@ -85,18 +72,21 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Create or Update a Machine": { - "$ref": "./examples/Machines_CreateOrUpdate.json" + "Validate a License": { + "$ref": "./examples/license/License_ValidateLicense.json" } } - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses/{licenseName}": { + "put": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_Update", - "description": "The operation to update a hybrid machine.", + "operationId": "Licenses_CreateOrUpdate", + "description": "The operation to create or update a license.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" @@ -108,30 +98,23 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "machineName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the hybrid machine." + "$ref": "#/parameters/licenseNameParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/MachineUpdate" + "$ref": "#/definitions/License" }, - "description": "Parameters supplied to the Update hybrid machine operation." + "description": "Parameters supplied to the Create license operation." } ], "responses": { "200": { - "description": "OK", + "description": "Updated Resource", "schema": { - "$ref": "#/definitions/Machine" + "$ref": "#/definitions/License" } }, "default": { @@ -141,18 +124,19 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Update a Machine": { - "$ref": "./examples/Machines_Update.json" + "Create or Update a License": { + "$ref": "./examples/license/License_CreateOrUpdate.json" } } }, - "delete": { + "patch": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_Delete", - "description": "The operation to delete a hybrid machine.", + "operationId": "Licenses_Update", + "description": "The operation to update a license.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" @@ -164,22 +148,24 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "machineName", - "in": "path", + "$ref": "#/parameters/licenseNameParameter" + }, + { + "name": "parameters", + "in": "body", "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the hybrid machine." + "schema": { + "$ref": "#/definitions/LicenseUpdate" + }, + "description": "Parameters supplied to the Update license operation." } ], "responses": { "200": { - "description": "OK" - }, - "204": { - "description": "No Content" + "description": "OK", + "schema": { + "$ref": "#/definitions/License" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -188,18 +174,19 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Delete a Machine": { - "$ref": "./examples/Machines_Delete.json" + "Update a License": { + "$ref": "./examples/license/License_Update.json" } } }, "get": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_Get", - "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "operationId": "Licenses_Get", + "description": "Retrieves information about the view of a license.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" @@ -211,35 +198,14 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "machineName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the hybrid machine." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The expand expression to apply on the operation.", - "enum": [ - "instanceView" - ], - "x-ms-enum": { - "name": "InstanceViewTypes", - "modelAsString": true - } + "$ref": "#/parameters/licenseNameParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Machine" + "$ref": "#/definitions/License" } }, "default": { @@ -250,61 +216,37 @@ } }, "x-ms-examples": { - "Get Machine": { - "$ref": "./examples/Machines_Get.json" + "Get License": { + "$ref": "./examples/license/License_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/assessPatches": { - "post": { + }, + "delete": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_AssessPatches", - "x-ms-examples": { - "Assess patch state of a machine.": { - "$ref": "./examples/MachineAssessPatches.json" - } - }, - "description": "The operation to assess patches on a hybrid machine identity in Azure.", + "operationId": "Licenses_Delete", + "description": "The operation to delete a license.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "name", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the hybrid machine." + "$ref": "#/parameters/licenseNameParameter" } ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MachineAssessPatchesResult" - } + "description": "OK" }, - "202": { - "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", - "headers": { - "Location": { - "description": "The URL of the resource used to check the status of the asynchronous operation.", - "type": "string" - } - } + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -314,68 +256,36 @@ } }, "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" + "x-ms-examples": { + "Delete a License": { + "$ref": "./examples/license/License_Delete.json" + } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/installPatches": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/licenses": { + "get": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_InstallPatches", - "description": "The operation to install patches on a hybrid machine identity in Azure.", - "x-ms-examples": { - "Install patch state of a machine.": { - "$ref": "./examples/MachineInstallPatches.json" - } - }, + "operationId": "Licenses_ListByResourceGroup", + "description": "The operation to get all licenses of a non-Azure machine", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "name", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the hybrid machine." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "installPatchesInput", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/MachineInstallPatchesParameters" - }, - "description": "Input for InstallPatches as directly received by the API" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/MachineInstallPatchesResult" - } - }, - "202": { - "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", - "headers": { - "Location": { - "description": "The URL of the resource used to check the status of the asynchronous operation.", - "type": "string" - } + "$ref": "#/definitions/LicensesListResult" } }, "default": { @@ -385,35 +295,36 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/license/License_ListByResourceGroup.json" + } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/licenses": { "get": { "tags": [ - "machines" + "licenses" ], - "operationId": "Machines_ListByResourceGroup", - "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "operationId": "Licenses_ListBySubscription", + "description": "The operation to get all licenses of a non-Azure machine", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/MachineListResult" + "$ref": "#/definitions/LicensesListResult" } }, "default": { @@ -423,36 +334,65 @@ } } }, - "x-ms-examples": { - "List Machines by resource group": { - "$ref": "./examples/Machines_ListByResourceGroup.json" - } - }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Licenses by Subscription": { + "$ref": "./examples/license/License_ListBySubscription.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}": { + "put": { "tags": [ "machines" ], - "operationId": "Machines_ListBySubscription", - "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine. Please note some properties can be set only during machine creation.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/MachineListResult" + "$ref": "#/definitions/Machine" } }, "default": { @@ -463,23 +403,24 @@ } }, "x-ms-examples": { - "List Machines by resource group": { - "$ref": "./examples/Machines_ListBySubscription.json" + "Create or Update a Machine": { + "$ref": "./examples/machine/Machines_CreateOrUpdate.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}": { - "put": { + }, + "patch": { "tags": [ - "MachineExtensions" + "machines" ], - "operationId": "MachineExtensions_CreateOrUpdate", - "description": "The operation to create or update the extension.", + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, @@ -491,40 +432,71 @@ "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", "minLength": 1, "maxLength": 54, - "description": "The name of the machine where the extension should be created or updated." - }, - { - "name": "extensionName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the machine extension." + "description": "The name of the hybrid machine." }, { - "name": "extensionParameters", + "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/MachineExtension" + "$ref": "#/definitions/MachineUpdate" }, - "description": "Parameters supplied to the Create Machine Extension operation." + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/machine/Machines_Update.json" + } + } + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to delete a hybrid machine.", + "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the hybrid machine." } ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MachineExtension" - } + "description": "OK" }, - "202": { - "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -534,19 +506,24 @@ } }, "x-ms-examples": { - "Create or Update a Machine Extension": { - "$ref": "./examples/PUTExtension.json" + "Delete a Machine": { + "$ref": "./examples/machine/Machines_Delete.json" } - }, - "x-ms-long-running-operation": true + } }, - "patch": { + "get": { "tags": [ - "MachineExtensions" + "machines" ], - "operationId": "MachineExtensions_Update", - "description": "The operation to create or update the extension.", + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, @@ -558,40 +535,92 @@ "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", "minLength": 1, "maxLength": 54, - "description": "The name of the machine where the extension should be created or updated." + "description": "The name of the hybrid machine." }, { - "name": "extensionName", - "in": "path", - "required": true, + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The name of the machine extension." + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } }, - { - "name": "extensionParameters", - "in": "body", - "required": true, + "default": { + "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/MachineExtensionUpdate" - }, - "description": "Parameters supplied to the Create Machine Extension operation." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/machine/Machines_Get.json" }, + "Get Machine with License Profile Instance View": { + "$ref": "./examples/machine/Machines_Get_LicenseProfileInstanceView.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles/{licenseProfileName}": { + "put": { + "tags": [ + "licenseProfiles" + ], + "operationId": "LicenseProfiles_CreateOrUpdate", + "description": "The operation to create or update a license profile.", + "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/machineNameParameter" + }, + { + "$ref": "#/parameters/licenseProfileNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LicenseProfile" + }, + "description": "Parameters supplied to the Create or Update license profile operation." } ], "responses": { "200": { - "description": "OK", + "description": "Updated Resource", "schema": { - "$ref": "#/definitions/MachineExtension" + "$ref": "#/definitions/LicenseProfile" } }, - "202": { - "description": "Accepted", + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/LicenseProfile" + }, "headers": { "Location": { "description": "The URL of the resource used to check the status of the asynchronous operation.", @@ -615,50 +644,51 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Create or Update a Machine Extension": { - "$ref": "./examples/UpdateExtension.json" + "Create or Update a License Profile": { + "$ref": "./examples/licenseProfile/LicenseProfile_CreateOrUpdate.json" } - }, - "x-ms-long-running-operation": true + } }, - "delete": { + "patch": { "tags": [ - "MachineExtensions" + "licenseProfiles" ], - "operationId": "MachineExtensions_Delete", - "description": "The operation to delete the extension.", + "operationId": "LicenseProfiles_Update", + "description": "The operation to update a license profile.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "machineName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the machine where the extension should be deleted." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "extensionName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the machine extension." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/machineNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/licenseProfileNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LicenseProfileUpdate" + }, + "description": "Parameters supplied to the Update license profile operation." } ], "responses": { "200": { - "description": "OK" + "description": "OK", + "schema": { + "$ref": "#/definitions/LicenseProfile" + } }, "202": { "description": "Accepted", @@ -678,9 +708,6 @@ } } }, - "204": { - "description": "No Content" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -690,50 +717,39 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "Delete a Machine Extension": { - "$ref": "./examples/DELETEExtension.json" + "Update a License Profile": { + "$ref": "./examples/licenseProfile/LicenseProfile_Update.json" } } }, "get": { "tags": [ - "MachineExtensions" + "licenseProfiles" ], - "operationId": "MachineExtensions_Get", - "description": "The operation to get the extension.", + "operationId": "LicenseProfiles_Get", + "description": "Retrieves information about the view of a license profile.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "machineName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the machine containing the extension." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "extensionName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the machine extension." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/machineNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/licenseProfileNameParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/MachineExtension" + "$ref": "#/definitions/LicenseProfile" } }, "default": { @@ -744,39 +760,91 @@ } }, "x-ms-examples": { - "GET Machine Extension": { - "$ref": "./examples/GETExtension.json" + "Get License Profile": { + "$ref": "./examples/licenseProfile/LicenseProfile_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions": { - "get": { + }, + "delete": { "tags": [ - "MachineExtensions" + "licenseProfiles" ], - "operationId": "MachineExtensions_List", - "description": "The operation to get all extensions of a non-Azure machine", + "operationId": "LicenseProfiles_Delete", + "description": "The operation to delete a license profile.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "machineName", - "in": "path", - "required": true, + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/machineNameParameter" + }, + { + "$ref": "#/parameters/licenseProfileNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a License Profile": { + "$ref": "./examples/licenseProfile/LicenseProfile_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/licenseProfiles": { + "get": { + "tags": [ + "licenseProfiles" + ], + "operationId": "LicenseProfiles_List", + "description": "The operation to get all license profiles of a non-Azure machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, "type": "string", "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", "minLength": 1, "maxLength": 54, - "description": "The name of the machine containing the extension." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The expand expression to apply on the operation." + "description": "The name of the machine." }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" @@ -789,7 +857,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/MachineExtensionsListResult" + "$ref": "#/definitions/LicenseProfilesListResult" } }, "default": { @@ -803,52 +871,52 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "GET all Machine Extensions": { - "$ref": "./examples/LISTExtension.json" + "List all License Profiles": { + "$ref": "./examples/licenseProfile/LicenseProfile_List.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/upgradeExtensions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/assessPatches": { "post": { "tags": [ - "MachineExtensions Upgrade" + "machines" ], - "operationId": "UpgradeExtensions", - "description": "The operation to Upgrade Machine Extensions.", + "operationId": "Machines_AssessPatches", + "x-ms-examples": { + "Assess patch state of a machine.": { + "$ref": "./examples/machine/Machine_AssessPatches.json" + } + }, + "description": "The operation to assess patches on a hybrid machine identity in Azure.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "machineName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", - "minLength": 1, - "maxLength": 54, - "description": "The name of the hybrid machine." + "description": "The name of the resource group." }, { - "name": "extensionUpgradeParameters", - "in": "body", + "name": "name", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/MachineExtensionUpgrade" - }, - "description": "Parameters supplied to the Upgrade Extensions operation." + "type": "string", + "description": "The name of the hybrid machine." } ], "responses": { "200": { - "description": "OK" + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineAssessPatchesResult" + } }, "202": { "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", @@ -856,15 +924,6 @@ "Location": { "description": "The URL of the resource used to check the status of the asynchronous operation.", "type": "string" - }, - "Retry-After": { - "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", - "type": "integer", - "format": "int32" - }, - "Azure-AsyncOperation": { - "description": "The URI to poll for completion status.", - "type": "string" } } }, @@ -875,85 +934,91 @@ } } }, - "x-ms-examples": { - "Upgrade Machine Extensions": { - "$ref": "./examples/Extensions_Upgrade.json" - } - }, - "x-ms-long-running-operation": true + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions/{version}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/installPatches": { + "post": { "tags": [ - "extensions" + "machines" ], - "operationId": "ExtensionMetadata_Get", - "description": "Gets an Extension Metadata based on location, publisher, extensionType and version", + "operationId": "Machines_InstallPatches", + "description": "The operation to install patches on a hybrid machine identity in Azure.", + "x-ms-examples": { + "Install patch state of a machine.": { + "$ref": "./examples/machine/Machine_InstallPatches.json" + } + }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "name": "location", - "in": "path", - "required": true, - "type": "string", - "description": "The location of the Extension being received." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "publisher", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The publisher of the Extension being received." + "description": "The name of the resource group." }, { - "name": "extensionType", + "name": "name", "in": "path", "required": true, "type": "string", - "description": "The extensionType of the Extension being received." + "description": "The name of the hybrid machine." }, { - "name": "version", - "in": "path", + "name": "installPatchesInput", + "in": "body", "required": true, - "type": "string", - "description": "The version of the Extension being received." + "schema": { + "$ref": "#/definitions/MachineInstallPatchesParameters" + }, + "description": "Input for InstallPatches as directly received by the API" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ExtensionValue" + "$ref": "#/definitions/MachineInstallPatchesResult" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + } } }, "default": { - "description": "Error in retrieving an extension metadata", + "description": "Error response describing why the operation failed.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, - "x-ms-examples": { - "GET an extensions metadata": { - "$ref": "./examples/ExtensionMetadata_Get.json" - } + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { "get": { "tags": [ - "extensions" + "machines" ], - "operationId": "ExtensionMetadata_List", - "description": "Gets all Extension versions based on location, publisher, extensionType", + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" @@ -962,68 +1027,60 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "location", - "in": "path", - "required": true, - "type": "string", - "description": "The location of the Extension being received." - }, - { - "name": "publisher", - "in": "path", - "required": true, - "type": "string", - "description": "The publisher of the Extension being received." + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "extensionType", - "in": "path", - "required": true, + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The extensionType of the Extension being received." + "description": "Expands referenced resources." } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/ExtensionValueListResult" + "$ref": "#/definitions/MachineListResult" } }, "default": { - "description": "Error in retrieving extension list", + "description": "Error response describing why the operation failed.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": null - }, "x-ms-examples": { - "GET a list of extensions": { - "$ref": "./examples/ExtensionMetadata_List.json" + "List Machines by resource group": { + "$ref": "./examples/machine/Machines_ListByResourceGroup.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.HybridCompute/operations": { + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { "get": { "tags": [ - "operations" + "machines" ], - "operationId": "Operations_List", - "description": "Gets a list of hybrid compute operations.", + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/OperationListResult" + "$ref": "#/definitions/MachineListResult" } }, "default": { @@ -1034,25 +1091,596 @@ } }, "x-ms-examples": { - "List Hybrid Compute Provider Operations": { - "$ref": "./examples/Operations_List.json" + "List Machines by resource group": { + "$ref": "./examples/machine/Machines_ListBySubscription.json" } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/networkProfile": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions/{extensionName}": { + "put": { "tags": [ - "MachineNetworkProfile" + "MachineExtensions" ], - "operationId": "NetworkProfile_Get", - "description": "The operation to get network information of hybrid machine", + "operationId": "MachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/extension/Extension_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Update", + "description": "The operation to update the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpdate" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/extension/Extension_Update.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the machine where the extension should be deleted." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a Machine Extension": { + "$ref": "./examples/extension/Extension_Delete.json" + } + } + }, + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the machine containing the extension." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/extension/Extension_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/extensions": { + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_List", + "description": "The operation to get all extensions of a non-Azure machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions - List": { + "$ref": "./examples/extension/Extension_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/upgradeExtensions": { + "post": { + "tags": [ + "MachineExtensions Upgrade" + ], + "operationId": "UpgradeExtensions", + "description": "The operation to Upgrade Machine Extensions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_\\.]{1,54}$", + "minLength": 1, + "maxLength": 54, + "description": "The name of the hybrid machine." + }, + { + "name": "extensionUpgradeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpgrade" + }, + "description": "Parameters supplied to the Upgrade Extensions operation." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Upgrade Machine Extensions": { + "$ref": "./examples/extension/Extensions_Upgrade.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions/{version}": { + "get": { + "tags": [ + "extensions" + ], + "operationId": "ExtensionMetadata_Get", + "description": "Gets an Extension Metadata based on location, publisher, extensionType and version", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the Extension being received." + }, + { + "name": "publisher", + "in": "path", + "required": true, + "type": "string", + "description": "The publisher of the Extension being received." + }, + { + "name": "extensionType", + "in": "path", + "required": true, + "type": "string", + "description": "The extensionType of the Extension being received." + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the Extension being received." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionValue" + } + }, + "default": { + "description": "Error in retrieving an extension metadata", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET an extensions metadata": { + "$ref": "./examples/extension/ExtensionMetadata_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/locations/{location}/publishers/{publisher}/extensionTypes/{extensionType}/versions": { + "get": { + "tags": [ + "extensions" + ], + "operationId": "ExtensionMetadata_List", + "description": "Gets all Extension versions based on location, publisher, extensionType", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the Extension being received." + }, + { + "name": "publisher", + "in": "path", + "required": true, + "type": "string", + "description": "The publisher of the Extension being received." + }, + { + "name": "extensionType", + "in": "path", + "required": true, + "type": "string", + "description": "The extensionType of the Extension being received." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionValueListResult" + } + }, + "default": { + "description": "Error in retrieving extension list", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "GET a list of extensions": { + "$ref": "./examples/extension/ExtensionMetadata_List.json" + } + } + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Hybrid Compute Provider Operations": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}/networkProfile": { + "get": { + "tags": [ + "MachineNetworkProfile" + ], + "operationId": "NetworkProfile_Get", + "description": "The operation to get network information of hybrid machine", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" @@ -1081,619 +1709,1416 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GET Network Profile": { + "$ref": "./examples/NetworkProfile_Get.json" + } + } + } + } + }, + "definitions": { + "ExtensionValueListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ExtensionValue" + }, + "description": "The list of extension metadata", + "x-ms-identifiers": [] + } + }, + "description": "The List Extension Metadata response." + }, + "ExtensionValue": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExtensionValueProperties", + "description": "The single extension based on search criteria" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Describes a Extension Metadata" + }, + "ExtensionValueProperties": { + "type": "object", + "properties": { + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the Extension being received." + }, + "extensionType": { + "type": "string", + "readOnly": true, + "description": "The type of the Extension being received." + }, + "publisher": { + "type": "string", + "readOnly": true, + "description": "The publisher of the Extension being received." + } + }, + "description": "Describes Extension Metadata properties" + }, + "OperationListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations", + "x-ms-identifiers": [] + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "type": "object", + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + }, + "isDataAction": { + "type": "boolean", + "readOnly": true, + "description": "This property indicates if the operation is an action or a data action" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "type": "object", + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "PatchSettings": { + "type": "object", + "properties": { + "assessmentMode": { + "type": "string", + "description": "Specifies the assessment mode.", + "enum": [ + "ImageDefault", + "AutomaticByPlatform" + ], + "x-ms-enum": { + "name": "AssessmentModeTypes", + "modelAsString": true + } + }, + "patchMode": { + "type": "string", + "description": "Specifies the patch mode.", + "enum": [ + "ImageDefault", + "AutomaticByPlatform", + "AutomaticByOS", + "Manual" + ], + "x-ms-enum": { + "name": "PatchModeTypes", + "modelAsString": true + } + }, + "enableHotpatching": { + "type": "boolean", + "description": "Captures the hotpatch capability enrollment intent of the customers, which enables customers to patch their Windows machines without requiring a reboot." + }, + "status": { + "readOnly": true, + "type": "object", + "properties": { + "hotpatchEnablementStatus": { + "$ref": "#/definitions/HotpatchEnablementStatus", + "description": "Indicates the current status of the hotpatch being enabled or disabled." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "readOnly": true, + "description": "The errors that were encountered during the hotpatch capability enrollment or disenrollment." } + }, + "description": "Status of the hotpatch capability enrollment or disenrollment." + } + }, + "description": "Specifies the patch settings." + }, + "AgentConfiguration": { + "type": "object", + "readOnly": true, + "properties": { + "proxyUrl": { + "type": "string", + "readOnly": true, + "description": "Specifies the URL of the proxy to be used." + }, + "incomingConnectionsPorts": { + "type": "array", + "readOnly": true, + "description": "Specifies the list of ports that the agent will be able to listen on.", + "items": { + "type": "string" + } + }, + "extensionsAllowList": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ConfigurationExtension" + }, + "description": "Array of extensions that are allowed to be installed or updated.", + "x-ms-identifiers": [] + }, + "extensionsBlockList": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ConfigurationExtension" + }, + "description": "Array of extensions that are blocked (cannot be installed or updated)", + "x-ms-identifiers": [] + }, + "proxyBypass": { + "type": "array", + "readOnly": true, + "description": "List of service names which should not use the specified proxy server.", + "items": { + "type": "string" + } + }, + "extensionsEnabled": { + "type": "string", + "readOnly": true, + "description": "Specifies whether the extension service is enabled or disabled." + }, + "guestConfigurationEnabled": { + "type": "string", + "readOnly": true, + "description": "Specified whether the guest configuration service is enabled or disabled." + }, + "configMode": { + "type": "string", + "readOnly": true, + "description": "Name of configuration mode to use. Modes are pre-defined configurations of security controls, extension allowlists and guest configuration, maintained by Microsoft.", + "enum": [ + "full", + "monitor" + ], + "x-ms-enum": { + "name": "agent configuration mode", + "modelAsString": true } + } + }, + "description": "Configurable properties that the user can set locally via the azcmagent config command, or remotely via ARM." + }, + "ConfigurationExtension": { + "type": "object", + "properties": { + "publisher": { + "type": "string", + "readOnly": true, + "description": "Publisher of the extension." }, - "x-ms-examples": { - "GET Network Profile": { - "$ref": "./examples/GETNetworkProfile.json" - } + "type": { + "type": "string", + "readOnly": true, + "description": "Type of the extension." } - } - } - }, - "definitions": { - "ExtensionValueListResult": { + }, + "description": "Describes properties that can identify extensions." + }, + "ServiceStatuses": { "type": "object", "properties": { - "value": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ExtensionValue" - }, - "description": "The list of extension metadata", - "x-ms-identifiers": [] + "extensionService": { + "$ref": "#/definitions/ServiceStatus", + "description": "The state of the extension service on the Arc-enabled machine." + }, + "guestConfigurationService": { + "$ref": "#/definitions/ServiceStatus", + "description": "The state of the guest configuration service on the Arc-enabled machine." } }, - "description": "The List Extension Metadata response." + "description": "Reports the state and behavior of dependent services." }, - "ExtensionValue": { + "ServiceStatus": { "type": "object", "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ExtensionValueProperties", - "description": "The single extension based on search criteria" + "status": { + "type": "string", + "description": "The current status of the service." + }, + "startupType": { + "type": "string", + "description": "The behavior of the service when the Arc-enabled machine starts up." } }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + "description": "Describes the status and behavior of a service." + }, + "CloudMetadata": { + "type": "object", + "properties": { + "provider": { + "type": "string", + "readOnly": true, + "description": "Specifies the cloud provider (Azure/AWS/GCP...)." } - ], - "description": "Describes a Extension Metadata" + }, + "description": "The metadata of the cloud environment (Azure/GCP/AWS/OCI...)." }, - "ExtensionValueProperties": { + "AgentUpgrade": { "type": "object", "properties": { - "version": { + "desiredVersion": { + "type": "string", + "description": "Specifies the version info w.r.t AgentUpgrade for the machine." + }, + "correlationId": { + "type": "string", + "description": "The correlation ID passed in from RSM per upgrade." + }, + "enableAutomaticUpgrade": { + "type": "boolean", + "description": "Specifies if RSM should try to upgrade this machine" + }, + "lastAttemptDesiredVersion": { "type": "string", "readOnly": true, - "description": "The version of the Extension being received." + "description": "Specifies the version of the last attempt" }, - "extensionType": { + "lastAttemptTimestamp": { "type": "string", "readOnly": true, - "description": "The type of the Extension being received." + "description": "Timestamp of last upgrade attempt" }, - "publisher": { + "lastAttemptStatus": { "type": "string", "readOnly": true, - "description": "The publisher of the Extension being received." + "enum": [ + "Success", + "Failed" + ], + "x-ms-enum": { + "name": "LastAttemptStatusEnum", + "modelAsString": true + }, + "description": "Specifies the status of Agent Upgrade." + }, + "lastAttemptMessage": { + "type": "string", + "readOnly": true, + "description": "Failure message of last upgrade attempt if any." } }, - "description": "Describes Extension Metadata properties" + "description": "The info w.r.t Agent Upgrade." }, - "OperationListResult": { + "OSProfile": { "type": "object", "properties": { - "value": { - "type": "array", + "computerName": { + "type": "string", "readOnly": true, - "items": { - "$ref": "#/definitions/OperationValue" + "description": "Specifies the host OS name of the hybrid machine." + }, + "windowsConfiguration": { + "type": "object", + "properties": { + "patchSettings": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PatchSettings" + } }, - "description": "The list of compute operations", - "x-ms-identifiers": [] + "description": "Specifies the windows configuration for update management." + }, + "linuxConfiguration": { + "type": "object", + "properties": { + "patchSettings": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PatchSettings" + } + }, + "description": "Specifies the linux configuration for update management." } }, - "description": "The List Compute Operation operation response." + "description": "Specifies the operating system settings for the hybrid machine." }, - "OperationValue": { + "DetectedProperties": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Detected properties from the machine." + }, + "MachineProperties": { "type": "object", "properties": { - "origin": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/locationData" + }, + "agentConfiguration": { + "$ref": "#/definitions/AgentConfiguration", + "description": "Configurable properties that the user can set locally via the azcmagent config command, or remotely via ARM." + }, + "serviceStatuses": { + "$ref": "#/definitions/ServiceStatuses", + "description": "Statuses of dependent services that are reported back to ARM." + }, + "cloudMetadata": { + "$ref": "#/definitions/CloudMetadata", + "description": "The metadata of the cloud environment (Azure/GCP/AWS/OCI...)." + }, + "agentUpgrade": { + "$ref": "#/definitions/AgentUpgrade", + "description": "The info of the machine w.r.t Agent Upgrade" + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "licenseProfile": { + "$ref": "#/definitions/LicenseProfileMachineInstanceView", + "description": "Specifies the License related properties for a machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { "readOnly": true, - "description": "The origin of the compute operation." + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail" + }, + "description": "Details about the error state.", + "x-ms-identifiers": [] + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "osType": { + "type": "string", + "description": "The type of Operating System (windows/linux)." + }, + "vmUuid": { + "readOnly": true, + "type": "string", + "description": "Specifies the Arc Machine's unique SMBIOS ID" + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + "description": "Machine Extensions information (deprecated field)", + "x-ms-identifiers": [] }, - "name": { + "osSku": { + "readOnly": true, "type": "string", + "description": "Specifies the Operating System product SKU." + }, + "osEdition": { "readOnly": true, - "description": "The name of the compute operation." + "type": "string", + "description": "The edition of the Operating System." }, - "display": { - "$ref": "#/definitions/OperationValueDisplay", - "description": "Display properties" + "domainName": { + "readOnly": true, + "type": "string", + "description": "Specifies the Windows domain name." }, - "isDataAction": { - "type": "boolean", + "adFqdn": { "readOnly": true, - "description": "This property indicates if the operation is an action or a data action" - } - }, - "description": "Describes the properties of a Compute Operation value." - }, - "OperationValueDisplay": { - "type": "object", - "properties": { - "operation": { "type": "string", + "description": "Specifies the AD fully qualified display name." + }, + "dnsFqdn": { "readOnly": true, - "description": "The display name of the compute operation." + "type": "string", + "description": "Specifies the DNS fully qualified display name." }, - "resource": { + "privateLinkScopeResourceId": { "type": "string", - "readOnly": true, - "description": "The display name of the resource the operation applies to." + "description": "The resource id of the private link scope this machine is assigned to, if any." }, - "description": { + "parentClusterResourceId": { "type": "string", - "readOnly": true, - "description": "The description of the operation." + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." }, - "provider": { + "mssqlDiscovered": { "type": "string", - "readOnly": true, - "description": "The resource provider for the operation." + "description": "Specifies whether any MS SQL instance is discovered on the machine." + }, + "detectedProperties": { + "$ref": "#/definitions/DetectedProperties", + "description": "Detected properties from the machine." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Information about the network the machine is on." } }, - "description": "Describes the properties of a Hybrid Compute Operation Value Display." + "description": "Describes the properties of a hybrid machine." }, - "PatchSettings": { + "MachineUpdateProperties": { "type": "object", "properties": { - "assessmentMode": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/locationData" + }, + "osProfile": { + "$ref": "#/definitions/OSProfile" + }, + "cloudMetadata": { + "$ref": "#/definitions/CloudMetadata", + "description": "The metadata of the cloud environment (Azure/GCP/AWS/OCI...)." + }, + "agentUpgrade": { + "$ref": "#/definitions/AgentUpgrade", + "description": "The info of the machine w.r.t Agent Upgrade" + }, + "parentClusterResourceId": { "type": "string", - "description": "Specifies the assessment mode.", - "enum": [ - "ImageDefault", - "AutomaticByPlatform" - ], - "x-ms-enum": { - "name": "AssessmentModeTypes", - "modelAsString": true - } + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." }, - "patchMode": { + "privateLinkScopeResourceId": { "type": "string", - "description": "Specifies the patch mode.", - "enum": [ - "ImageDefault", - "AutomaticByPlatform", - "AutomaticByOS", - "Manual" - ], - "x-ms-enum": { - "name": "PatchModeTypes", - "modelAsString": true - } + "description": "The resource id of the private link scope this machine is assigned to, if any." } }, - "description": "Specifies the patch settings." + "description": "Describes the ARM updatable properties of a hybrid machine." }, - "AgentConfiguration": { + "Machine": { "type": "object", - "readOnly": true, "properties": { - "proxyUrl": { - "type": "string", - "readOnly": true, - "description": "Specifies the URL of the proxy to be used." - }, - "incomingConnectionsPorts": { - "type": "array", - "readOnly": true, - "description": "Specifies the list of ports that the agent will be able to listen on.", - "items": { - "type": "string" - } + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" }, - "extensionsAllowList": { - "type": "array", + "resources": { "readOnly": true, - "items": { - "$ref": "#/definitions/ConfigurationExtension" - }, - "description": "Array of extensions that are allowed to be installed or updated.", - "x-ms-identifiers": [] - }, - "extensionsBlockList": { "type": "array", - "readOnly": true, "items": { - "$ref": "#/definitions/ConfigurationExtension" + "$ref": "#/definitions/MachineExtension" }, - "description": "Array of extensions that are blocked (cannot be installed or updated)", - "x-ms-identifiers": [] + "description": "The list of extensions affiliated to the machine" }, - "proxyBypass": { - "type": "array", - "readOnly": true, - "description": "List of service names which should not use the specified proxy server.", - "items": { - "type": "string" - } + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity" }, - "extensionsEnabled": { - "type": "string", - "readOnly": true, - "description": "Specifies whether the extension service is enabled or disabled." + "kind": { + "$ref": "#/definitions/ArcKindEnum" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a hybrid machine." + }, + "ArcKindEnum": { + "type": "string", + "description": "Indicates which kind of Arc machine placement on-premises, such as HCI, SCVMM or VMware etc.", + "enum": [ + "AVS", + "HCI", + "SCVMM", + "VMware", + "EPS", + "GCP", + "AWS" + ], + "x-ms-enum": { + "name": "ArcKindEnum ", + "modelAsString": true + } + }, + "MachineUpdate": { + "type": "object", + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity" }, - "guestConfigurationEnabled": { - "type": "string", - "readOnly": true, - "description": "Specified whether the guest configuration service is enabled or disabled." + "kind": { + "$ref": "#/definitions/ArcKindEnum" }, - "configMode": { - "type": "string", - "readOnly": true, - "description": "Name of configuration mode to use. Modes are pre-defined configurations of security controls, extension allowlists and guest configuration, maintained by Microsoft.", - "enum": [ - "full", - "monitor" - ], - "x-ms-enum": { - "name": "agent configuration mode", - "modelAsString": true - } + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" } }, - "description": "Configurable properties that the user can set locally via the azcmagent config command, or remotely via ARM." + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a hybrid machine Update." }, - "ConfigurationExtension": { + "MachineListResult": { "type": "object", "properties": { - "publisher": { - "type": "string", - "readOnly": true, - "description": "Publisher of the extension." + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." }, - "type": { + "nextLink": { "type": "string", - "readOnly": true, - "description": "Type of the extension." + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." } }, - "description": "Describes properties that can identify extensions." + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." }, - "ServiceStatuses": { + "ProvisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Accepted", + "Canceled", + "Deleted" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "description": "The provisioning state, which only appears in the response." + }, + "License": { "type": "object", "properties": { - "extensionService": { - "$ref": "#/definitions/ServiceStatus", - "description": "The state of the extension service on the Arc-enabled machine." - }, - "guestConfigurationService": { - "$ref": "#/definitions/ServiceStatus", - "description": "The state of the guest configuration service on the Arc-enabled machine." + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicenseProperties", + "description": "Hybrid Compute License properties" } }, - "description": "Reports the state and behavior of dependent services." + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a license in a hybrid machine." }, - "ServiceStatus": { + "LicenseProperties": { "type": "object", "properties": { - "status": { - "type": "string", - "description": "The current status of the service." + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state, which only appears in the response." }, - "startupType": { + "tenantId": { "type": "string", - "description": "The behavior of the service when the Arc-enabled machine starts up." + "description": "Describes the tenant id." + }, + "licenseType": { + "$ref": "#/definitions/LicenseType", + "description": "The type of the license resource." + }, + "licenseDetails": { + "$ref": "#/definitions/LicenseDetails", + "description": "Describes the properties of a License." } }, - "description": "Describes the status and behavior of a service." + "description": "Describes the properties of a License Profile." + }, + "LicenseUpdate": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicenseUpdateProperties", + "description": "License Update properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a License Update." }, - "CloudMetadata": { + "LicenseUpdateProperties": { "type": "object", "properties": { - "provider": { - "type": "string", - "readOnly": true, - "description": "Specifies the cloud provider (Azure/AWS/GCP...)." + "licenseType": { + "$ref": "#/definitions/LicenseType", + "description": "The type of the license resource." + }, + "licenseDetails": { + "x-ms-client-flatten": true, + "type": "object", + "properties": { + "state": { + "$ref": "#/definitions/LicenseState" + }, + "target": { + "$ref": "#/definitions/LicenseTarget" + }, + "edition": { + "$ref": "#/definitions/LicenseEdition" + }, + "type": { + "$ref": "#/definitions/LicenseCoreType" + }, + "processors": { + "type": "integer", + "format": "int32", + "description": "Describes the number of processors." + } + } } }, - "description": "The metadata of the cloud environment (Azure/GCP/AWS/OCI...)." + "description": "Describes the Update properties of a License Profile." }, - "AgentUpgrade": { + "LicenseDetails": { "type": "object", "properties": { - "desiredVersion": { - "type": "string", - "description": "Specifies the version info w.r.t AgentUpgrade for the machine." + "state": { + "$ref": "#/definitions/LicenseState" }, - "correlationId": { - "type": "string", - "description": "The correlation ID passed in from RSM per upgrade." + "target": { + "$ref": "#/definitions/LicenseTarget" }, - "enableAutomaticUpgrade": { - "type": "boolean", - "description": "Specifies if RSM should try to upgrade this machine" + "edition": { + "$ref": "#/definitions/LicenseEdition" }, - "lastAttemptTimestamp": { - "type": "string", + "type": { + "$ref": "#/definitions/LicenseCoreType" + }, + "processors": { + "type": "integer", + "format": "int32", + "description": "Describes the number of processors." + }, + "assignedLicenses": { "readOnly": true, - "description": "Timestamp of last upgrade attempt" + "type": "integer", + "format": "int32", + "description": "Describes the number of assigned licenses." }, - "lastAttemptStatus": { - "type": "string", + "immutableId": { "readOnly": true, + "type": "string", + "description": "Describes the immutable id." + }, + "volumeLicenseDetails": { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeLicenseDetails" + }, + "description": "A list of volume license details." + } + }, + "description": "Describes the properties of a License." + }, + "VolumeLicenseDetails": { + "type": "object", + "properties": { + "programYear": { + "type": "string", + "description": "Describes the program year the volume license is for.", "enum": [ - "Success", - "Failed" + "Year 1", + "Year 2", + "Year 3" ], "x-ms-enum": { - "name": "LastAttemptStatusEnum", + "name": "ProgramYear", "modelAsString": true - }, - "description": "Specifies the status of Agent Upgrade." + } }, - "lastAttemptMessage": { + "invoiceId": { "type": "string", - "readOnly": true, - "description": "Failure message of last upgrade attempt if any." + "description": "The invoice id for the volume license." } + } + }, + "LicenseType": { + "type": "string", + "enum": [ + "ESU" + ], + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true }, - "description": "The info w.r.t Agent Upgrade." + "description": "The type of the license resource." }, - "OSProfile": { + "LicenseState": { + "type": "string", + "enum": [ + "Activated", + "Deactivated" + ], + "x-ms-enum": { + "name": "LicenseState", + "modelAsString": true + }, + "description": "Describes the state of the license." + }, + "LicenseEdition": { + "type": "string", + "enum": [ + "Standard", + "Datacenter" + ], + "x-ms-enum": { + "name": "LicenseEdition", + "modelAsString": true + }, + "description": "Describes the edition of the license. The values are either Standard or Datacenter." + }, + "LicenseTarget": { + "type": "string", + "enum": [ + "Windows Server 2012", + "Windows Server 2012 R2" + ], + "x-ms-enum": { + "name": "LicenseTarget", + "modelAsString": true + }, + "description": "Describes the license target server." + }, + "LicenseCoreType": { + "type": "string", + "enum": [ + "pCore", + "vCore" + ], + "x-ms-enum": { + "name": "LicenseCoreType", + "modelAsString": true + }, + "description": "Describes the license core type (pCore or vCore)." + }, + "LicensesListResult": { "type": "object", "properties": { - "computerName": { - "type": "string", - "readOnly": true, - "description": "Specifies the host OS name of the hybrid machine." + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/License" + }, + "description": "The list of licenses." }, - "windowsConfiguration": { + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of license profile." + } + }, + "required": [ + "value" + ], + "description": "The List license operation response." + }, + "LicenseProfile": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, "type": "object", "properties": { - "patchSettings": { + "softwareAssurance": { "x-ms-client-flatten": true, - "$ref": "#/definitions/PatchSettings" + "type": "object", + "properties": { + "softwareAssuranceCustomer": { + "type": "boolean", + "description": "Specifies if this machine is licensed as part of a Software Assurance agreement." + } + } + }, + "esuProfile": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicenseProfileArmEsuProperties", + "description": "Hybrid Compute ESU Profile properties" + }, + "productProfile": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicenseProfileArmProductProfileProperties", + "description": "Hybrid Compute Product Profile properties" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state, which only appears in the response." } }, - "description": "Specifies the windows configuration for update management." - }, - "linuxConfiguration": { + "description": "Describe the properties of a license profile." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a license profile in a hybrid machine." + }, + "LicenseProfileUpdate": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, "type": "object", "properties": { - "patchSettings": { + "softwareAssurance": { "x-ms-client-flatten": true, - "$ref": "#/definitions/PatchSettings" + "type": "object", + "properties": { + "softwareAssuranceCustomer": { + "type": "boolean", + "description": "Specifies if this machine is licensed as part of a Software Assurance agreement." + } + } + }, + "esuProfile": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EsuProfileUpdateProperties", + "description": "Hybrid Compute ESU Profile Update properties" + }, + "productProfile": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductProfileUpdateProperties", + "description": "Hybrid Compute Product Profile Update properties" } }, - "description": "Specifies the linux configuration for update management." + "description": "Describe the Update properties of a license profile." } }, - "description": "Specifies the operating system settings for the hybrid machine." - }, - "DetectedProperties": { - "readOnly": true, - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Detected properties from the machine." + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Describes a License Profile Update." }, - "MachineProperties": { + "LicenseProfilesListResult": { "type": "object", "properties": { - "locationData": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/locationData" - }, - "agentConfiguration": { - "$ref": "#/definitions/AgentConfiguration", - "description": "Configurable properties that the user can set locally via the azcmagent config command, or remotely via ARM." - }, - "serviceStatuses": { - "$ref": "#/definitions/ServiceStatuses", - "description": "Statuses of dependent services that are reported back to ARM." - }, - "cloudMetadata": { - "$ref": "#/definitions/CloudMetadata", - "description": "The metadata of the cloud environment (Azure/GCP/AWS/OCI...)." - }, - "agentUpgrade": { - "$ref": "#/definitions/AgentUpgrade", - "description": "The info of the machine w.r.t Agent Upgrade" - }, - "osProfile": { - "$ref": "#/definitions/OSProfile", - "description": "Specifies the operating system settings for the hybrid machine." - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The provisioning state, which only appears in the response." - }, - "status": { - "readOnly": true, - "type": "string", - "description": "The status of the hybrid machine agent.", - "enum": [ - "Connected", - "Disconnected", - "Error" - ], - "x-ms-enum": { - "name": "StatusTypes", - "modelAsString": true - } - }, - "lastStatusChange": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The time of the last status change." - }, - "errorDetails": { - "readOnly": true, + "value": { "type": "array", "items": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail" + "$ref": "#/definitions/LicenseProfile" }, - "description": "Details about the error state.", - "x-ms-identifiers": [] - }, - "agentVersion": { - "readOnly": true, - "type": "string", - "description": "The hybrid machine agent full version." - }, - "vmId": { - "type": "string", - "x-ms-mutability": [ - "read", - "create" - ], - "description": "Specifies the hybrid machine unique ID." - }, - "displayName": { - "readOnly": true, - "type": "string", - "description": "Specifies the hybrid machine display name." - }, - "machineFqdn": { - "readOnly": true, - "type": "string", - "description": "Specifies the hybrid machine FQDN." - }, - "clientPublicKey": { - "type": "string", - "description": "Public Key that the client provides to be used during initial resource onboarding" - }, - "osName": { - "readOnly": true, - "type": "string", - "description": "The Operating System running on the hybrid machine." + "description": "The list of license profiles." }, - "osVersion": { - "readOnly": true, + "nextLink": { "type": "string", - "description": "The version of Operating System running on the hybrid machine." - }, - "osType": { + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of license profile." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine license profile operation response." + }, + "EsuServerType": { + "type": "string", + "enum": [ + "Standard", + "Datacenter" + ], + "x-ms-enum": { + "name": "EsuServerType", + "modelAsString": true + }, + "description": "The server types for Esu." + }, + "EsuEligibility": { + "type": "string", + "enum": [ + "Eligible", + "Ineligible", + "Unknown" + ], + "x-ms-enum": { + "name": "EsuEligibility", + "modelAsString": true + }, + "description": "The ESU eligibility." + }, + "EsuKey": { + "type": "object", + "properties": { + "sku": { "type": "string", - "description": "The type of Operating System (windows/linux)." + "description": "SKU number." }, - "vmUuid": { + "licenseStatus": { + "type": "integer", + "format": "int32", + "description": "The current status of the license profile key. Represented by the same integer value that is presented on the machine itself when querying the license key status." + } + }, + "description": "ESU key" + }, + "EsuKeyState": { + "type": "string", + "enum": [ + "Inactive", + "Active" + ], + "x-ms-enum": { + "name": "EsuKeyState", + "modelAsString": true + }, + "description": "The ESU key state." + }, + "LicenseProfileStorageModelEsuProperties": { + "type": "object", + "properties": { + "assignedLicenseImmutableId": { "readOnly": true, "type": "string", - "description": "Specifies the Arc Machine's unique SMBIOS ID" + "description": "The guid id of the license." }, - "extensions": { + "esuKeys": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/MachineExtensionInstanceView" + "$ref": "#/definitions/EsuKey" }, - "description": "Machine Extensions information (deprecated field)", + "description": "The list of ESU keys.", "x-ms-identifiers": [] - }, - "osSku": { - "readOnly": true, + } + }, + "description": "License profile storage model for ESU properties." + }, + "LicenseProfileArmEsuProperties": { + "type": "object", + "properties": { + "assignedLicense": { "type": "string", - "description": "Specifies the Operating System product SKU." - }, - "domainName": { + "description": "The resource id of the license." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LicenseProfileArmEsuPropertiesWithoutAssignedLicense" + } + ], + "description": "Describes the properties of a License Profile ARM model." + }, + "LicenseProfileArmEsuPropertiesWithoutAssignedLicense": { + "type": "object", + "properties": { + "serverType": { "readOnly": true, - "type": "string", - "description": "Specifies the Windows domain name." + "$ref": "#/definitions/EsuServerType", + "description": "The type of the Esu servers." }, - "adFqdn": { + "esuEligibility": { "readOnly": true, - "type": "string", - "description": "Specifies the AD fully qualified display name." + "$ref": "#/definitions/EsuEligibility", + "description": "Indicates the eligibility state of Esu." }, - "dnsFqdn": { + "esuKeyState": { "readOnly": true, + "$ref": "#/definitions/EsuKeyState", + "description": "Indicates whether there is an ESU Key currently active for the machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LicenseProfileStorageModelEsuProperties" + } + ], + "description": "Describes the properties of a License Profile ARM model." + }, + "EsuProfileUpdateProperties": { + "type": "object", + "properties": { + "assignedLicense": { "type": "string", - "description": "Specifies the DNS fully qualified display name." - }, - "privateLinkScopeResourceId": { + "description": "The resource id of the license." + } + }, + "description": "Describes the Update properties of a ESU License Profile." + }, + "LicenseProfileSubscriptionStatusUpdate": { + "type": "string", + "enum": [ + "Enable", + "Disable" + ], + "x-ms-enum": { + "name": "LicenseProfileSubscriptionStatusUpdate", + "modelAsString": true + }, + "description": "Indicates the new subscription status of the OS or Product Features." + }, + "ProductFeatureUpdate": { + "type": "object", + "properties": { + "name": { "type": "string", - "description": "The resource id of the private link scope this machine is assigned to, if any." + "description": "Product feature name." }, - "parentClusterResourceId": { - "type": "string", - "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + "subscriptionStatus": { + "$ref": "#/definitions/LicenseProfileSubscriptionStatusUpdate", + "description": "Indicates the new status of the product feature." + } + }, + "description": "Product Feature" + }, + "ProductProfileUpdateProperties": { + "type": "object", + "properties": { + "subscriptionStatus": { + "$ref": "#/definitions/LicenseProfileSubscriptionStatusUpdate", + "description": "Indicates the subscription status of the product." }, - "mssqlDiscovered": { - "type": "string", - "description": "Specifies whether any MS SQL instance is discovered on the machine." + "productType": { + "$ref": "#/definitions/LicenseProfileProductType", + "description": "Indicates the product type of the license." }, - "detectedProperties": { - "$ref": "#/definitions/DetectedProperties", - "description": "Detected properties from the machine." + "productFeatures": { + "type": "array", + "items": { + "$ref": "#/definitions/ProductFeatureUpdate" + }, + "description": "The list of product feature updates.", + "x-ms-identifiers": [] } }, - "description": "Describes the properties of a hybrid machine." + "description": "Describes the Update properties of a Product Profile." }, - "MachineUpdateProperties": { + "LicenseProfileMachineInstanceView": { "type": "object", "properties": { - "locationData": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/locationData" - }, - "osProfile": { - "$ref": "#/definitions/OSProfile" + "licenseStatus": { + "$ref": "#/definitions/LicenseStatus", + "description": "Indicates the license status of the OS." }, - "cloudMetadata": { - "$ref": "#/definitions/CloudMetadata", - "description": "The metadata of the cloud environment (Azure/GCP/AWS/OCI...)." + "licenseChannel": { + "readOnly": true, + "type": "string", + "description": "Indicates the license channel." }, - "agentUpgrade": { - "$ref": "#/definitions/AgentUpgrade", - "description": "The info of the machine w.r.t Agent Upgrade" + "softwareAssurance": { + "x-ms-client-flatten": true, + "type": "object", + "readOnly": true, + "properties": { + "softwareAssuranceCustomer": { + "type": "boolean", + "description": "Specifies if this machine is licensed as part of a Software Assurance agreement." + } + } }, - "parentClusterResourceId": { - "type": "string", - "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + "esuProfile": { + "$ref": "#/definitions/LicenseProfileMachineInstanceViewEsuProperties" }, - "privateLinkScopeResourceId": { - "type": "string", - "description": "The resource id of the private link scope this machine is assigned to, if any." + "productProfile": { + "x-ms-client-flatten": true, + "readOnly": true, + "$ref": "#/definitions/LicenseProfileArmProductProfileProperties", + "description": "Hybrid Compute Product Profile properties" } }, - "description": "Describes the ARM updatable properties of a hybrid machine." + "description": "License Profile Instance View in Machine Properties." }, - "Machine": { + "LicenseProfileMachineInstanceViewEsuProperties": { "type": "object", "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/MachineProperties", - "description": "Hybrid Compute Machine properties" - }, - "resources": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/MachineExtension" - }, - "description": "The list of extensions affiliated to the machine" + "assignedLicense": { + "$ref": "#/definitions/License", + "description": "The assigned license resource." }, - "identity": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity" + "licenseAssignmentState": { + "type": "string", + "enum": [ + "Assigned", + "NotAssigned" + ], + "description": "Describes the license assignment state (Assigned or NotAssigned).", + "x-ms-enum": { + "name": "licenseAssignmentState", + "modelAsString": true + } } }, "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + "$ref": "#/definitions/LicenseProfileArmEsuPropertiesWithoutAssignedLicense" } ], - "description": "Describes a hybrid machine." + "description": "Properties for the Machine ESU profile." }, - "MachineUpdate": { + "LicenseStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unlicensed", + "Licensed", + "OOBGrace", + "OOTGrace", + "NonGenuineGrace", + "Notification", + "ExtendedGrace" + ], + "x-ms-enum": { + "name": "LicenseStatus", + "modelAsString": true + }, + "description": "The license status." + }, + "LicenseProfileSubscriptionStatus": { + "type": "string", + "enum": [ + "Unknown", + "Enabling", + "Enabled", + "Disabled", + "Disabling", + "Failed" + ], + "x-ms-enum": { + "name": "LicenseProfileSubscriptionStatus", + "modelAsString": true + }, + "description": "Subscription status of the OS or Product feature." + }, + "LicenseProfileProductType": { + "type": "string", + "enum": [ + "WindowsServer", + "WindowsIoTEnterprise" + ], + "x-ms-enum": { + "name": "LicenseProfileProductType", + "modelAsString": true + }, + "description": "The product type of the license." + }, + "ProductFeature": { "type": "object", "properties": { - "identity": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity" + "name": { + "type": "string", + "description": "Product feature name." }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/MachineUpdateProperties", - "description": "Hybrid Compute Machine properties" + "subscriptionStatus": { + "$ref": "#/definitions/LicenseProfileSubscriptionStatus", + "description": "Indicates the current status of the product features." + }, + "enrollmentDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the user enrolls the feature." + }, + "billingStartDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the billing starts." + }, + "disenrollmentDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the user disenrolled the feature." + }, + "billingEndDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the billing ends." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "readOnly": true, + "description": "The errors that were encountered during the feature enrollment or disenrollment." } }, - "allOf": [ - { - "$ref": "#/definitions/ResourceUpdate" - } - ], - "description": "Describes a hybrid machine Update." + "description": "Product Feature" }, - "MachineListResult": { + "LicenseProfileArmProductProfileProperties": { "type": "object", "properties": { - "value": { + "subscriptionStatus": { + "$ref": "#/definitions/LicenseProfileSubscriptionStatus", + "description": "Indicates the subscription status of the product." + }, + "productType": { + "$ref": "#/definitions/LicenseProfileProductType", + "description": "Indicates the product type of the license." + }, + "enrollmentDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the user enrolls the feature." + }, + "billingStartDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the billing starts." + }, + "disenrollmentDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the user disenrolled the feature." + }, + "billingEndDate": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The timestamp in UTC when the billing ends." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "readOnly": true, + "description": "The errors that were encountered during the feature enrollment or disenrollment." + }, + "productFeatures": { "type": "array", "items": { - "$ref": "#/definitions/Machine" + "$ref": "#/definitions/ProductFeature" }, - "description": "The list of hybrid machines." - }, - "nextLink": { - "type": "string", - "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + "description": "The list of product features.", + "x-ms-identifiers": [] } }, - "required": [ - "value" + "description": "Describes the properties of a Product License Profile ARM model." + }, + "HotpatchEnablementStatus": { + "type": "string", + "enum": [ + "Unknown", + "PendingEvaluation", + "Disabled", + "ActionRequired", + "Enabled" ], - "description": "The List hybrid machine operation response." + "x-ms-enum": { + "name": "HotpatchEnablementStatus", + "modelAsString": true + }, + "description": "Status of hotpatch enablement or disablement." }, "ResourceUpdate": { "type": "object", @@ -2408,7 +3833,105 @@ } }, "description": "The result summary of an installation operation." + }, + "ExtensionsResourceStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "ExtensionsStatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "type": "object", + "description": "Instance view status." } }, - "parameters": {} + "parameters": { + "machineNameParameter": { + "name": "machineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9-_\\.]+", + "description": "The name of the hybrid machine.", + "x-ms-parameter-location": "method" + }, + "licenseProfileNameParameter": { + "name": "licenseProfileName", + "in": "path", + "description": "The name of the license profile.", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9-_\\.]+", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method", + "x-ms-enum": { + "name": "LicenseProfileName", + "modelAsString": false + } + }, + "licenseNameParameter": { + "name": "licenseName", + "in": "path", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9-_\\.]+", + "description": "The name of the license.", + "x-ms-parameter-location": "method" + }, + "baseProviderParameter": { + "name": "baseProvider", + "in": "path", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9-_\\.]+", + "description": "The name of the base Resource Provider.", + "x-ms-parameter-location": "method" + }, + "baseResourceTypeParameter": { + "name": "baseResourceType", + "in": "path", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9-_\\.]+", + "description": "The name of the base Resource Type.", + "x-ms-parameter-location": "method" + }, + "baseResourceNameParameter": { + "name": "baseResourceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "[a-zA-Z0-9-_\\.]+", + "description": "The name of the base resource.", + "x-ms-parameter-location": "method" + } + } } diff --git a/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-12-27/privateLinkScopes.json b/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2024-07-10/privateLinkScopes.json similarity index 64% rename from swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-12-27/privateLinkScopes.json rename to swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2024-07-10/privateLinkScopes.json index 56f706487..fc608abf3 100644 --- a/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-12-27/privateLinkScopes.json +++ b/swagger-specs/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2024-07-10/privateLinkScopes.json @@ -6,7 +6,7 @@ "name": "HybridComputeManagementClient" }, "description": "Azure Arc( Servers and K8s Clusters) API reference for Private Link's Scopes management.", - "version": "2022-12-27" + "version": "2024-07-10" }, "host": "management.azure.com", "schemes": [ @@ -65,7 +65,7 @@ }, "x-ms-examples": { "PrivateLinkScopesList.json": { - "$ref": "./examples/PrivateLinkScopesList.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_List.json" } }, "x-ms-pageable": { @@ -104,7 +104,7 @@ }, "x-ms-examples": { "PrivateLinkScopeListByResourceGroup": { - "$ref": "./examples/PrivateLinkScopesListByResourceGroup.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_ListByResourceGroup.json" } }, "x-ms-pageable": { @@ -165,7 +165,7 @@ "x-ms-long-running-operation": true, "x-ms-examples": { "PrivateLinkScopesDelete": { - "$ref": "./examples/PrivateLinkScopesDelete.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_Delete.json" } } }, @@ -202,7 +202,7 @@ }, "x-ms-examples": { "PrivateLinkScopeGet": { - "$ref": "./examples/PrivateLinkScopesGet.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_Get.json" } } }, @@ -254,10 +254,10 @@ }, "x-ms-examples": { "PrivateLinkScopeCreate": { - "$ref": "./examples/PrivateLinkScopesCreate.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_Create.json" }, "PrivateLinkScopeUpdate": { - "$ref": "./examples/PrivateLinkScopesUpdate.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_Update.json" } } }, @@ -303,7 +303,7 @@ }, "x-ms-examples": { "PrivateLinkScopeUpdateTagsOnly": { - "$ref": "./examples/PrivateLinkScopesUpdateTagsOnly.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_UpdateTagsOnly.json" } } } @@ -348,7 +348,7 @@ }, "x-ms-examples": { "Gets private endpoint connection.": { - "$ref": "./examples/PrivateLinkScopePrivateLinkResourceListGet.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopePrivateLinkResource_ListGet.json" } } } @@ -393,7 +393,7 @@ }, "x-ms-examples": { "Gets private endpoint connection.": { - "$ref": "./examples/PrivateLinkScopePrivateLinkResourceGet.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopePrivateLinkResource_Get.json" } } } @@ -442,7 +442,7 @@ }, "x-ms-examples": { "Gets private endpoint connection.": { - "$ref": "./examples/PrivateEndpointConnectionGet.json" + "$ref": "./examples/privateEndpoint/PrivateEndpointConnection_Get.json" } } }, @@ -501,7 +501,7 @@ "x-ms-long-running-operation": true, "x-ms-examples": { "Approve or reject a private endpoint connection with a given name.": { - "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + "$ref": "./examples/privateEndpoint/PrivateEndpointConnection_Update.json" } } }, @@ -567,7 +567,7 @@ "x-ms-long-running-operation": true, "x-ms-examples": { "Deletes a private endpoint connection with a given name.": { - "$ref": "./examples/PrivateEndpointConnectionDelete.json" + "$ref": "./examples/privateEndpoint/PrivateEndpointConnection_Delete.json" } } } @@ -612,7 +612,7 @@ }, "x-ms-examples": { "Gets list of private endpoint connections on a private link scope.": { - "$ref": "./examples/PrivateEndpointConnectionList.json" + "$ref": "./examples/privateEndpoint/PrivateEndpointConnection_List.json" } } } @@ -651,7 +651,7 @@ }, "x-ms-examples": { "PrivateLinkScopeGet": { - "$ref": "./examples/PrivateLinkScopesGetValidation.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_GetValidation.json" } } } @@ -690,13 +690,566 @@ }, "x-ms-examples": { "PrivateLinkScopeGet": { - "$ref": "./examples/PrivateLinkScopesGetValidationForMachine.json" + "$ref": "./examples/privateLinkScope/PrivateLinkScopes_GetValidationForMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/networkSecurityPerimeterConfigurations/{perimeterName}": { + "get": { + "tags": [ + "NetworkSecurityPerimeterConfiguration" + ], + "description": "Gets the network security perimeter configuration for a private link scope.", + "operationId": "NetworkSecurityPerimeterConfigurations_GetByPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/PerimeterName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved network security perimeter configuration details.", + "schema": { + "$ref": "#/definitions/NetworkSecurityPerimeterConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the network security perimeter configuration of the private link scope.": { + "$ref": "./examples/networkSecurityPerimeterConfiguration/NetworkSecurityPerimeterConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/networkSecurityPerimeterConfigurations": { + "get": { + "tags": [ + "NetworkSecurityPerimeterConfiguration" + ], + "description": "Lists the network security perimeter configurations for a private link scope.", + "operationId": "NetworkSecurityPerimeterConfigurations_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved network security perimeter configuration details.", + "schema": { + "$ref": "#/definitions/NetworkSecurityPerimeterConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the list of network security perimeter configurations of the private link scope.": { + "$ref": "./examples/networkSecurityPerimeterConfiguration/NetworkSecurityPerimeterConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/privateLinkScopes/{scopeName}/networkSecurityPerimeterConfigurations/{perimeterName}/reconcile": { + "post": { + "tags": [ + "NetworkSecurityPerimeterConfiguration" + ], + "description": "Forces the network security perimeter configuration to refresh for a private link scope.", + "operationId": "NetworkSecurityPerimeterConfigurations_ReconcileForPrivateLinkScope", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/PerimeterName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkSecurityPerimeterConfigurationReconcileResult" + } + }, + "202": { + "description": "Accepted.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reconciles the network security perimeter configuration of the private link scope.": { + "$ref": "./examples/networkSecurityPerimeterConfiguration/NetworkSecurityPerimeterConfigurationReconcile.json" } } } } }, "definitions": { + "KeyProperties": { + "type": "object", + "description": "Public key information for client authentication", + "properties": { + "clientPublicKey": { + "description": "Current public key details", + "readOnly": true, + "$ref": "#/definitions/KeyDetails" + }, + "candidatePublicKey": { + "description": "Candidate public key details", + "readOnly": true, + "$ref": "#/definitions/KeyDetails" + } + } + }, + "KeyDetails": { + "type": "object", + "description": "Public key details", + "properties": { + "publicKey": { + "type": "string", + "description": "Public key", + "readOnly": true + }, + "notAfter": { + "type": "string", + "format": "date-time", + "description": "Key expiration date", + "readOnly": true + }, + "renewAfter": { + "type": "string", + "format": "date-time", + "description": "Recommended key renewal date", + "readOnly": true + } + } + }, + "NetworkSecurityPerimeterConfiguration": { + "type": "object", + "description": "Properties that define a Network Security Perimeter resource.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define a Network Security Perimeter resource.", + "$ref": "#/definitions/NetworkSecurityPerimeterConfigurationProperties" + } + }, + "x-ms-azure-resource": true + }, + "NetworkSecurityPerimeterConfigurationProperties": { + "type": "object", + "description": "Properties that define a Network Security Perimeter resource.", + "properties": { + "provisioningState": { + "type": "string", + "description": "Current state of this NetworkSecurityPerimeter: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", + "readOnly": true + }, + "provisioningIssues": { + "type": "array", + "description": "Provisioning issues.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ProvisioningIssue" + }, + "x-ms-identifiers": [] + }, + "networkSecurityPerimeter": { + "description": "The Network Security Perimeter associated with this configuration.", + "$ref": "#/definitions/NetworkSecurityPerimeter" + }, + "resourceAssociation": { + "description": "The Resource Association.", + "$ref": "#/definitions/ResourceAssociation" + }, + "profile": { + "description": "Network Security Perimeter profile", + "$ref": "#/definitions/NetworkSecurityPerimeterProfile" + } + } + }, + "NetworkSecurityPerimeterProfile": { + "type": "object", + "description": "Network Security Perimeter profile", + "properties": { + "name": { + "type": "string", + "description": "Name of the resource", + "readOnly": true + }, + "accessRulesVersion": { + "type": "integer", + "format": "int32", + "description": "Access rules version number", + "readOnly": true + }, + "accessRules": { + "type": "array", + "description": "Collection of access rules for the profile", + "readOnly": true, + "items": { + "$ref": "#/definitions/AccessRule" + }, + "x-ms-identifiers": [] + }, + "diagnosticSettingsVersion": { + "type": "integer", + "format": "int32", + "description": "Diagnostic settings version number", + "readOnly": true + }, + "enabledLogCategories": { + "type": "array", + "description": "Collection of enabled log categories for the profile", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "ProvisioningIssue": { + "type": "object", + "description": "Details on issues that occurred during provisioning.", + "properties": { + "name": { + "type": "string", + "description": "Name of the provisioning issue.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Provisioning issue properties", + "readOnly": true, + "$ref": "#/definitions/ProvisioningIssueProperties" + } + } + }, + "ProvisioningIssueProperties": { + "type": "object", + "description": "Properties of a provisioning issue.", + "properties": { + "issueType": { + "description": "Issue type", + "readOnly": true, + "$ref": "#/definitions/ProvisioningIssueType" + }, + "severity": { + "description": "Severity of the provisioning issue.", + "readOnly": true, + "$ref": "#/definitions/ProvisioningIssueSeverity" + }, + "description": { + "type": "string", + "description": "Description of the provisioning issue.", + "readOnly": true + }, + "suggestedResourceIds": { + "type": "array", + "description": "ARM Ids of the resources that can be associated to the same perimeter to remediate the issue", + "readOnly": true, + "items": { + "type": "string" + }, + "x-ms-identifiers": [] + }, + "suggestedAccessRules": { + "type": "array", + "description": "Access rules that can be added to the perimeter to remediate the issue", + "readOnly": true, + "items": { + "$ref": "#/definitions/AccessRule" + }, + "x-ms-identifiers": [] + } + } + }, + "ProvisioningIssueType": { + "type": "string", + "description": "Type of provisioning issue.", + "enum": [ + "MissingPerimeterConfiguration", + "MissingIdentityConfiguration", + "ConfigurationPropagationFailure", + "Other" + ], + "x-ms-enum": { + "name": "ProvisioningIssueType", + "modelAsString": true, + "values": [ + { + "value": "MissingPerimeterConfiguration", + "description": "Perimeter configuration is missing." + }, + { + "value": "MissingIdentityConfiguration", + "description": "Identity configuration is missing." + }, + { + "value": "ConfigurationPropagationFailure", + "description": "Configuration failed to propagate." + }, + { + "value": "Other", + "description": "Other failure." + } + ] + } + }, + "ProvisioningIssueSeverity": { + "type": "string", + "description": "Severity of the provisioning issue.", + "enum": [ + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "ProvisioningIssueSeverity", + "modelAsString": true, + "values": [ + { + "value": "Warning", + "description": "Warnings can cause connectivity issues after provisioning succeeds." + }, + { + "value": "Error", + "description": "Errors will cause association provisioning to fail." + } + ] + } + }, + "AccessMode": { + "type": "string", + "description": "Property that impacts a resource's logging behavior and its connectivity with other resources and public networks.", + "enum": [ + "enforced", + "audit", + "learning" + ], + "x-ms-enum": { + "name": "AccessMode", + "modelAsString": true, + "values": [ + { + "value": "enforced", + "description": "Indicates that resource access is controlled by the NSP definition." + }, + { + "value": "audit", + "description": "Dry run mode, where traffic is evaluated against NSP Rules, logged but not enforced." + }, + { + "value": "learning", + "description": "Enables traffic evaluation to fall back to resource-specific firewall configurations." + } + ] + } + }, + "AccessRuleDirection": { + "type": "string", + "description": "Indicates direction of an access rule.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "AccessRuleDirection", + "modelAsString": true, + "values": [ + { + "value": "Inbound", + "description": "Traffic originates outside of network." + }, + { + "value": "Outbound", + "description": "Traffic originates inside the network" + } + ] + } + }, + "AccessRule": { + "type": "object", + "description": "Access rule.", + "properties": { + "name": { + "type": "string", + "description": "Name of the access rule.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Access rule properties", + "readOnly": true, + "$ref": "#/definitions/AccessRuleProperties" + } + } + }, + "AccessRuleProperties": { + "type": "object", + "description": "Properties of an access rule.", + "properties": { + "direction": { + "description": "Direction of the access rule.", + "readOnly": true, + "$ref": "#/definitions/AccessRuleDirection" + }, + "addressPrefixes": { + "type": "array", + "description": "Address prefixes that are allowed access.", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "NetworkSecurityPerimeter": { + "type": "object", + "description": "Properties that define a Network Security Perimeter resource.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "perimeterGuid": { + "type": "string", + "description": "Guid of the Network Security Perimeter", + "readOnly": true + }, + "location": { + "type": "string", + "readOnly": true, + "description": "Regional location of the perimeter" + } + } + }, + "NetworkSecurityPerimeterConfigurationListResult": { + "type": "object", + "description": "A list of network security perimeter configurations.", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityPerimeterConfiguration" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "NetworkSecurityPerimeterConfigurationReconcileResult": { + "type": "object", + "description": "Result of network security perimeter configurations.", + "properties": { + "location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + } + } + }, + "ResourceAssociation": { + "type": "object", + "description": "Properties that define a Resource Association.", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Name of the Resource Association" + }, + "accessMode": { + "description": "The access mode", + "readOnly": true, + "$ref": "#/definitions/AccessMode" + } + } + }, "PrivateLinkScopesResource": { "type": "object", "properties": { @@ -1078,6 +1631,10 @@ { "value": "Disabled", "description": "Does not allow Azure Arc agents to communicate with Azure Arc services over public (internet) endpoints. The agents must use the private link." + }, + { + "value": "SecuredByPerimeter", + "description": "Azure Arc agent communication with Azure Arc services over public (internet) is enforced by Network Security Perimeter (NSP)" } ] } @@ -1090,7 +1647,8 @@ "required": true, "type": "string", "description": "The name of the Azure Arc PrivateLinkScope resource.", - "x-ms-parameter-location": "method" + "x-ms-parameter-location": "method", + "pattern": "[a-zA-Z0-9-_\\.]+" }, "PrivateLinkScopeId": { "name": "privateLinkScopeId", @@ -1125,6 +1683,32 @@ "description": "The name of the target machine to get the private link scope validation details for.", "minLength": 1, "x-ms-parameter-location": "method" + }, + "ResourceUriParameter": { + "name": "resourceUri", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified Azure Resource manager identifier of the resource to be connected.", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "NetworkConfigurationScopeId": { + "name": "scopeId", + "in": "path", + "required": true, + "type": "string", + "description": "The id (Guid) of the Azure Arc Network Configuration Scope resource.", + "x-ms-parameter-location": "method" + }, + "PerimeterName": { + "name": "perimeterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name, in the format {perimeterGuid}.{associationName}, of the Network Security Perimeter resource.", + "x-ms-parameter-location": "method", + "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[.]{1}.+$" } } } diff --git a/swagger-specs/hybridcompute/resource-manager/api-set.json b/swagger-specs/hybridcompute/resource-manager/api-set.json index b0e7111a4..6626e9ce8 100644 --- a/swagger-specs/hybridcompute/resource-manager/api-set.json +++ b/swagger-specs/hybridcompute/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.HybridCompute/stable/2022-12-27/HybridCompute.json", "Microsoft.HybridCompute/stable/2022-12-27/privateLinkScopes.json"], "name": "package-2022-12"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.HybridCompute/stable/2024-07-10/HybridCompute.json", "Microsoft.HybridCompute/stable/2024-07-10/privateLinkScopes.json"], "name": "package-2024-07"} \ No newline at end of file diff --git a/swagger-specs/maps/data-plane/Render/stable/2022-08-01/render.json b/swagger-specs/maps/data-plane/Render/stable/2022-08-01/render.json index 45020010e..56a17008b 100644 --- a/swagger-specs/maps/data-plane/Render/stable/2022-08-01/render.json +++ b/swagger-specs/maps/data-plane/Render/stable/2022-08-01/render.json @@ -218,7 +218,7 @@ }, { "value": "microsoft.imagery", - "description": "A combination of satellite and aerial imagery. Only available in S1 pricing SKU.
\n\nSupports zoom levels 1 through 19. Format: raster (jpeg)." + "description": "A combination of satellite or aerial imagery. Only available in S1 and G2 pricing SKU.
\n\nSupports zoom levels 1 through 19. Format: raster (png)." }, { "value": "microsoft.weather.radar.main", @@ -226,7 +226,7 @@ }, { "value": "microsoft.weather.infrared.main", - "description": "Weather infrared tiles. Latest Infrared Satellite images shows clouds by their temperature. Please see [coverage information](https://aka.ms/AzureMapsWeatherCoverage) for Azure Maps Weather service. To learn more about the returned Satellite data, please see [Weather concepts](https://aka.ms/AzureMapsWeatherConcepts).
\n\nSupports zoom levels 0 through 15. Format: raster (png)." + "description": "Weather infrared tiles. Latest Infrared Satellite images shows clouds by their temperature. Please see [coverage information](https://aka.ms/AzureMapsWeatherCoverage) for Azure Maps Weather service. To learn more about the returned Satellite data, please see [Weather concepts](https://learn.microsoft.com/azure/azure-maps/weather-services-concepts#satellite-images).
\n\nSupports zoom levels 0 through 15. Format: raster (png)." }, { "value": "microsoft.traffic.absolute", diff --git a/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2024-03-01-preview/scenarios/basic.yaml b/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2024-03-01-preview/scenarios/basic.yaml deleted file mode 100644 index 29faed305..000000000 --- a/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2024-03-01-preview/scenarios/basic.yaml +++ /dev/null @@ -1,40 +0,0 @@ -# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-rest-api-specs/main/documentation/api-scenario/references/v1.2/schema.json -scope: ResourceGroup -variables: - mongoClusterName: - type: string - prefix: mongoclu - administratorLoginPassword: - type: secureString - firewallRuleName: - type: string - prefix: firewall -scenarios: - - scenario: basic - description: Basic scenario for creating, reading and deleting a Mongo Cluster. - steps: - - step: MongoClusters_NameAvailability - exampleFile: ../examples/MongoClusters_NameAvailability.json - - step: MongoClusters_CreateOrUpdate - exampleFile: ../examples/MongoClusters_Create.json - requestUpdate: - - replace: /resource/properties/administratorLoginPassword - value: $(administratorLoginPassword) - - step: MongoClusters_ListByResourceGroup - exampleFile: ../examples/MongoClusters_ListByResourceGroup.json - - step: MongoClusters_Get - exampleFile: ../examples/MongoClusters_Get.json - - step: FirewallRules_CreateOrUpdate - exampleFile: ../examples/MongoClusters_FirewallRuleCreate.json - - step: FirewallRules_ListByMongoCluster - exampleFile: ../examples/MongoClusters_FirewallRuleList.json - - step: FirewallRules_Get - exampleFile: ../examples/MongoClusters_FirewallRuleGet.json - - step: MongoClusters_ListConnectionStrings - exampleFile: ../examples/MongoClusters_ListConnectionStrings.json - - step: MongoClusters_Update - exampleFile: ../examples/MongoClusters_PatchDiskSize.json - - step: FirewallRules_Delete - exampleFile: ../examples/MongoClusters_FirewallRuleDelete.json - - step: MongoClusters_Delete - exampleFile: ../examples/MongoClusters_Delete.json \ No newline at end of file diff --git a/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2024-03-01-preview/mongoCluster.json b/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/stable/2024-07-01/mongoCluster.json similarity index 75% rename from swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2024-03-01-preview/mongoCluster.json rename to swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/stable/2024-07-01/mongoCluster.json index 7016ea3ef..789f2216b 100644 --- a/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2024-03-01-preview/mongoCluster.json +++ b/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/stable/2024-07-01/mongoCluster.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "MongoClusterManagementClient", - "version": "2024-03-01-preview", + "version": "2024-07-01", "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure Cosmos DB for MongoDB vCore resources including clusters and firewall rules.", "x-typespec-generated": [ { @@ -53,6 +53,9 @@ }, { "name": "PrivateLinks" + }, + { + "name": "Replicas" } ], "paths": { @@ -341,6 +344,9 @@ }, "Creates a new Mongo Cluster resource.": { "$ref": "./examples/MongoClusters_Create.json" + }, + "Creates a replica Mongo Cluster resource from a source resource.": { + "$ref": "./examples/MongoClusters_CreateGeoReplica.json" } }, "x-ms-long-running-operation-options": { @@ -416,6 +422,9 @@ "Disables public network access on a Mongo Cluster resource with a private endpoint connection.": { "$ref": "./examples/MongoClusters_PatchPrivateNetworkAccess.json" }, + "Resets the administrator login password.": { + "$ref": "./examples/MongoClusters_ResetPassword.json" + }, "Updates a Mongo Cluster resource": { "$ref": "./examples/MongoClusters_Update.json" }, @@ -1116,9 +1125,181 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/promote": { + "post": { + "operationId": "MongoClusters_Promote", + "tags": [ + "MongoClusters" + ], + "description": "Promotes a replica mongo cluster to a primary role.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "body", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "#/definitions/PromoteReplicaRequest" + } + } + ], + "responses": { + "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": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Promotes a replica Mongo Cluster resource to a primary role.": { + "$ref": "./examples/MongoClusters_ForcePromoteReplica.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/replicas": { + "get": { + "operationId": "Replicas_ListByParent", + "tags": [ + "Replicas" + ], + "description": "List all the replicas for the mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ReplicaListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List the replicas linked to a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_ReplicaList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } } }, "definitions": { + "AdministratorProperties": { + "type": "object", + "description": "The local administrator login properties.", + "properties": { + "userName": { + "type": "string", + "description": "The administrator user name.", + "x-ms-mutability": [ + "read", + "update", + "create" + ] + }, + "password": { + "type": "string", + "format": "password", + "description": "The administrator password.", + "x-ms-mutability": [ + "update", + "create" + ], + "x-ms-secret": true + } + } + }, + "Azure.Core.azureLocation": { + "type": "string", + "description": "Represents an Azure geography region where supported resource providers live." + }, + "BackupProperties": { + "type": "object", + "description": "The backup properties of the cluster. This includes the earliest restore time and retention settings.", + "properties": { + "earliestRestoreTime": { + "type": "string", + "description": "Earliest restore timestamp in UTC ISO8601 format.", + "readOnly": true + } + } + }, + "ComputeProperties": { + "type": "object", + "description": "The compute properties of the cluster. This includes the virtual-cores/memory and scaling options applied to servers in the cluster.", + "properties": { + "tier": { + "type": "string", + "description": "The compute tier to assign to the cluster, where each tier maps to a virtual-core and memory size. Example values: 'M30', 'M40'." + } + } + }, "ConnectionString": { "type": "object", "description": "Connection string for the mongo cluster", @@ -1132,6 +1313,11 @@ "type": "string", "description": "Description of the connection string", "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the connection string.", + "readOnly": true } } }, @@ -1140,7 +1326,9 @@ "description": "The mode that the Mongo Cluster is created with.", "enum": [ "Default", - "PointInTimeRestore" + "PointInTimeRestore", + "GeoReplica", + "Replica" ], "x-ms-enum": { "name": "CreateMode", @@ -1155,6 +1343,16 @@ "name": "PointInTimeRestore", "value": "PointInTimeRestore", "description": "Create a mongo cluster from a restore point-in-time." + }, + { + "name": "GeoReplica", + "value": "GeoReplica", + "description": "Create a replica cluster in distinct geographic region from the source cluster." + }, + { + "name": "Replica", + "value": "Replica", + "description": "Create a replica cluster in the same geographic region as the source cluster." } ] } @@ -1165,8 +1363,7 @@ "properties": { "properties": { "$ref": "#/definitions/FirewallRuleProperties", - "description": "The resource-specific properties for this resource.", - "x-ms-client-flatten": true + "description": "The resource-specific properties for this resource." } }, "allOf": [ @@ -1221,6 +1418,46 @@ "endIpAddress" ] }, + "HighAvailabilityMode": { + "type": "string", + "description": "The high availability modes for a cluster.", + "enum": [ + "Disabled", + "SameZone", + "ZoneRedundantPreferred" + ], + "x-ms-enum": { + "name": "HighAvailabilityMode", + "modelAsString": true, + "values": [ + { + "name": "Disabled", + "value": "Disabled", + "description": "High availability mode is disabled. This mode is can see availability impact during faults or maintenance and is not recommended for production." + }, + { + "name": "SameZone", + "value": "SameZone", + "description": "High availability mode is enabled, where each server in a shard is placed in the same availability zone." + }, + { + "name": "ZoneRedundantPreferred", + "value": "ZoneRedundantPreferred", + "description": "High availability mode is enabled and preferences ZoneRedundant if availability zones capacity is available in the region, otherwise falls-back to provisioning with SameZone." + } + ] + } + }, + "HighAvailabilityProperties": { + "type": "object", + "description": "The high availability properties of the cluster.", + "properties": { + "targetMode": { + "$ref": "#/definitions/HighAvailabilityMode", + "description": "The target high availability mode requested for the cluster." + } + } + }, "ListConnectionStringsResult": { "type": "object", "description": "The connection strings for the given mongo cluster.", @@ -1242,8 +1479,7 @@ "properties": { "properties": { "$ref": "#/definitions/MongoClusterProperties", - "description": "The resource-specific properties for this resource.", - "x-ms-client-flatten": true + "description": "The resource-specific properties for this resource." } }, "allOf": [ @@ -1291,24 +1527,16 @@ "create" ] }, - "administratorLogin": { - "type": "string", - "description": "The administrator's login for the mongo cluster.", + "replicaParameters": { + "$ref": "#/definitions/MongoClusterReplicaParameters", + "description": "The parameters to create a replica mongo cluster.", "x-ms-mutability": [ - "read", - "update", "create" ] }, - "administratorLoginPassword": { - "type": "string", - "format": "password", - "description": "The password of the administrator login.", - "x-ms-mutability": [ - "update", - "create" - ], - "x-ms-secret": true + "administrator": { + "$ref": "#/definitions/AdministratorProperties", + "description": "The local administrator properties for the mongo cluster." }, "serverVersion": { "type": "string", @@ -1319,11 +1547,6 @@ "description": "The default mongo connection string for the cluster.", "readOnly": true }, - "earliestRestoreTime": { - "type": "string", - "description": "Earliest restore timestamp in UTC ISO8601 format.", - "readOnly": true - }, "provisioningState": { "$ref": "#/definitions/ProvisioningState", "description": "The provisioning state of the mongo cluster.", @@ -1338,13 +1561,25 @@ "$ref": "#/definitions/PublicNetworkAccess", "description": "Whether or not public endpoint access is allowed for this mongo cluster." }, - "nodeGroupSpecs": { - "type": "array", - "description": "The list of node group specs in the cluster.", - "items": { - "$ref": "#/definitions/NodeGroupSpec" - }, - "x-ms-identifiers": [] + "highAvailability": { + "$ref": "#/definitions/HighAvailabilityProperties", + "description": "The high availability properties of the mongo cluster." + }, + "storage": { + "$ref": "#/definitions/StorageProperties", + "description": "The storage properties of the mongo cluster." + }, + "sharding": { + "$ref": "#/definitions/ShardingProperties", + "description": "The sharding properties of the mongo cluster." + }, + "compute": { + "$ref": "#/definitions/ComputeProperties", + "description": "The compute properties of the mongo cluster." + }, + "backup": { + "$ref": "#/definitions/BackupProperties", + "description": "The backup properties of the mongo cluster." }, "privateEndpointConnections": { "type": "array", @@ -1353,9 +1588,56 @@ "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpointConnection" }, "readOnly": true + }, + "previewFeatures": { + "type": "array", + "description": "List of private endpoint connections.", + "items": { + "$ref": "#/definitions/PreviewFeature" + } + }, + "replica": { + "$ref": "#/definitions/ReplicationProperties", + "description": "The replication properties for the mongo cluster", + "readOnly": true + }, + "infrastructureVersion": { + "type": "string", + "description": "The infrastructure version the cluster is provisioned on.", + "readOnly": true } } }, + "MongoClusterReplicaParameters": { + "type": "object", + "description": "Parameters used for replica operations.", + "properties": { + "sourceResourceId": { + "$ref": "#/definitions/MongoClusterResourceId", + "description": "The id of the replication source cluster." + }, + "sourceLocation": { + "$ref": "#/definitions/Azure.Core.azureLocation", + "description": "The location of the source cluster" + } + }, + "required": [ + "sourceResourceId", + "sourceLocation" + ] + }, + "MongoClusterResourceId": { + "type": "string", + "format": "arm-id", + "description": "Identifier for a mongo cluster resource.", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.DocumentDB/mongoClusters" + } + ] + } + }, "MongoClusterRestoreParameters": { "type": "object", "description": "Parameters used for restore operations", @@ -1366,7 +1648,7 @@ "description": "UTC point in time to restore a mongo cluster" }, "sourceResourceId": { - "type": "string", + "$ref": "#/definitions/MongoClusterResourceId", "description": "Resource ID to locate the source cluster to restore" } } @@ -1438,8 +1720,7 @@ }, "properties": { "$ref": "#/definitions/MongoClusterUpdateProperties", - "description": "The resource-specific properties for this resource.", - "x-ms-client-flatten": true + "description": "The resource-specific properties for this resource." } } }, @@ -1447,24 +1728,9 @@ "type": "object", "description": "The updatable properties of the MongoCluster.", "properties": { - "administratorLogin": { - "type": "string", - "description": "The administrator's login for the mongo cluster.", - "x-ms-mutability": [ - "read", - "update", - "create" - ] - }, - "administratorLoginPassword": { - "type": "string", - "format": "password", - "description": "The password of the administrator login.", - "x-ms-mutability": [ - "update", - "create" - ], - "x-ms-secret": true + "administrator": { + "$ref": "#/definitions/AdministratorProperties", + "description": "The local administrator properties for the mongo cluster." }, "serverVersion": { "type": "string", @@ -1474,77 +1740,49 @@ "$ref": "#/definitions/PublicNetworkAccess", "description": "Whether or not public endpoint access is allowed for this mongo cluster." }, - "nodeGroupSpecs": { - "type": "array", - "description": "The list of node group specs in the cluster.", - "items": { - "$ref": "#/definitions/NodeGroupSpec" - }, - "x-ms-identifiers": [] - } - } - }, - "NodeGroupProperties": { - "type": "object", - "description": "The properties of the node group on a cluster.", - "properties": { - "sku": { - "type": "string", - "description": "The resource sku for the node group. This defines the size of CPU and memory that is provisioned for each node. Example values: 'M30', 'M40'." - }, - "diskSizeGB": { - "type": "integer", - "format": "int64", - "description": "The disk storage size for the node group in GB. Example values: 128, 256, 512, 1024." + "highAvailability": { + "$ref": "#/definitions/HighAvailabilityProperties", + "description": "The high availability properties of the mongo cluster." }, - "enableHa": { - "type": "boolean", - "description": "Whether high availability is enabled on the node group." - } - } - }, - "NodeGroupSpec": { - "type": "object", - "description": "Specification for a node group.", - "properties": { - "sku": { - "type": "string", - "description": "The resource sku for the node group. This defines the size of CPU and memory that is provisioned for each node. Example values: 'M30', 'M40'." + "storage": { + "$ref": "#/definitions/StorageProperties", + "description": "The storage properties of the mongo cluster." }, - "diskSizeGB": { - "type": "integer", - "format": "int64", - "description": "The disk storage size for the node group in GB. Example values: 128, 256, 512, 1024." + "sharding": { + "$ref": "#/definitions/ShardingProperties", + "description": "The sharding properties of the mongo cluster." }, - "enableHa": { - "type": "boolean", - "description": "Whether high availability is enabled on the node group." + "compute": { + "$ref": "#/definitions/ComputeProperties", + "description": "The compute properties of the mongo cluster." }, - "kind": { - "$ref": "#/definitions/NodeKind", - "description": "The node type deployed in the node group." + "backup": { + "$ref": "#/definitions/BackupProperties", + "description": "The backup properties of the mongo cluster." }, - "nodeCount": { - "type": "integer", - "format": "int32", - "description": "The number of nodes in the node group." + "previewFeatures": { + "type": "array", + "description": "List of private endpoint connections.", + "items": { + "$ref": "#/definitions/PreviewFeature" + } } } }, - "NodeKind": { + "PreviewFeature": { "type": "string", - "description": "The kind of the node on the cluster.", + "description": "Preview features that can be enabled on a mongo cluster.", "enum": [ - "Shard" + "GeoReplicas" ], "x-ms-enum": { - "name": "NodeKind", + "name": "PreviewFeature", "modelAsString": true, "values": [ { - "name": "Shard", - "value": "Shard", - "description": "The node is a shard kind." + "name": "GeoReplicas", + "value": "GeoReplicas", + "description": "Enables geo replicas preview feature. The feature must be set at create-time on new cluster to enable linking a geo-replica cluster to it." } ] } @@ -1555,8 +1793,7 @@ "properties": { "properties": { "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpointConnectionProperties", - "description": "The resource-specific properties for this resource.", - "x-ms-client-flatten": true + "description": "The resource-specific properties for this resource." } }, "allOf": [ @@ -1592,8 +1829,7 @@ "properties": { "properties": { "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateLinkResourceProperties", - "description": "The resource-specific properties for this resource.", - "x-ms-client-flatten": true + "description": "The resource-specific properties for this resource." } }, "allOf": [ @@ -1623,6 +1859,59 @@ "value" ] }, + "PromoteMode": { + "type": "string", + "description": "The mode to apply to a promote operation.", + "enum": [ + "Switchover" + ], + "x-ms-enum": { + "name": "PromoteMode", + "modelAsString": true, + "values": [ + { + "name": "Switchover", + "value": "Switchover", + "description": "Promotion will switch the current replica cluster to the primary role and the original primary will be switched to a replica role, maintaining the replication link." + } + ] + } + }, + "PromoteOption": { + "type": "string", + "description": "The option to apply to a promote operation.", + "enum": [ + "Forced" + ], + "x-ms-enum": { + "name": "PromoteOption", + "modelAsString": true, + "values": [ + { + "name": "Forced", + "value": "Forced", + "description": "Promote option forces the promotion without waiting for the replica to be caught up to the primary. This can result in data-loss so should only be used during disaster recovery scenarios." + } + ] + } + }, + "PromoteReplicaRequest": { + "type": "object", + "description": "Promote replica request properties.", + "properties": { + "promoteOption": { + "$ref": "#/definitions/PromoteOption", + "description": "The promote option to apply to the operation." + }, + "mode": { + "$ref": "#/definitions/PromoteMode", + "description": "The mode to apply to the promote operation. Value is optional and default value is 'Switchover'." + } + }, + "required": [ + "promoteOption" + ] + }, "ProvisioningState": { "type": "string", "description": "The provisioning state of the last accepted operation.", @@ -1695,6 +1984,163 @@ } ] } + }, + "Replica": { + "type": "object", + "description": "Represents a mongo cluster replica.", + "properties": { + "properties": { + "$ref": "#/definitions/MongoClusterProperties", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "ReplicaListResult": { + "type": "object", + "description": "The response of a Replica list operation.", + "properties": { + "value": { + "type": "array", + "description": "The Replica items on this page", + "items": { + "$ref": "#/definitions/Replica" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ReplicationProperties": { + "type": "object", + "description": "Replica properties of the mongo cluster.", + "properties": { + "sourceResourceId": { + "$ref": "#/definitions/MongoClusterResourceId", + "description": "The resource id the source cluster for the replica cluster.", + "readOnly": true + }, + "role": { + "$ref": "#/definitions/ReplicationRole", + "description": "The replication role of the cluster", + "readOnly": true + }, + "replicationState": { + "$ref": "#/definitions/ReplicationState", + "description": "The replication link state of the replica cluster.", + "readOnly": true + } + } + }, + "ReplicationRole": { + "type": "string", + "description": "Replication role of the mongo cluster.", + "enum": [ + "Primary", + "AsyncReplica", + "GeoAsyncReplica" + ], + "x-ms-enum": { + "name": "ReplicationRole", + "modelAsString": true, + "values": [ + { + "name": "Primary", + "value": "Primary", + "description": "The cluster is a primary replica." + }, + { + "name": "AsyncReplica", + "value": "AsyncReplica", + "description": "The cluster is a local asynchronous replica." + }, + { + "name": "GeoAsyncReplica", + "value": "GeoAsyncReplica", + "description": "The cluster is a geo-asynchronous replica." + } + ] + } + }, + "ReplicationState": { + "type": "string", + "description": "The state of the replication link between the replica and source cluster.", + "enum": [ + "Active", + "Catchup", + "Provisioning", + "Updating", + "Broken", + "Reconfiguring" + ], + "x-ms-enum": { + "name": "ReplicationState", + "modelAsString": true, + "values": [ + { + "name": "Active", + "value": "Active", + "description": "Replication link is active." + }, + { + "name": "Catchup", + "value": "Catchup", + "description": "Replica is catching-up with the primary. This can occur after the replica is created or after a promotion is triggered." + }, + { + "name": "Provisioning", + "value": "Provisioning", + "description": "Replica and replication link to the primary is being created." + }, + { + "name": "Updating", + "value": "Updating", + "description": "Replication link is being updated due to a change on the replica or an upgrade." + }, + { + "name": "Broken", + "value": "Broken", + "description": "Replication link is broken and the replica may need to be recreated." + }, + { + "name": "Reconfiguring", + "value": "Reconfiguring", + "description": "Replication link is re-configuring due to a promotion event." + } + ] + } + }, + "ShardingProperties": { + "type": "object", + "description": "The sharding properties of the cluster. This includes the shard count and scaling options for the cluster.", + "properties": { + "shardCount": { + "type": "integer", + "format": "int32", + "description": "Number of shards to provision on the cluster." + } + } + }, + "StorageProperties": { + "type": "object", + "description": "The storage properties of the cluster. This includes the data storage size and scaling applied to servers in the cluster.", + "properties": { + "sizeGb": { + "type": "integer", + "format": "int64", + "description": "The size of the data disk assigned to each server." + } + } } }, "parameters": {} diff --git a/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/stable/2024-07-01/scenarios/basic.yaml b/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/stable/2024-07-01/scenarios/basic.yaml new file mode 100644 index 000000000..f1c21345d --- /dev/null +++ b/swagger-specs/mongocluster/resource-manager/Microsoft.DocumentDB/stable/2024-07-01/scenarios/basic.yaml @@ -0,0 +1,148 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-rest-api-specs/main/documentation/api-scenario/references/v1.2/schema.json +scope: ResourceGroup +variables: + primaryClusterName: + type: string + prefix: mongoclu + primaryRegion: + type: string + value: westus + replicaClusterName: + type: string + prefix: replicaclu + replicaRegion: + type: string + value: westus3 + administratorLoginPassword: + type: secureString + administratorLoginPassword2: + type: secureString + firewallRuleName: + type: string + prefix: firewall +scenarios: + - scenario: basic + description: Basic scenario for creating, reading and deleting a Mongo Cluster. + steps: + - step: Check_NameAvailability + exampleFile: ../examples/MongoClusters_NameAvailability.json + requestUpdate: + - replace: /body/name + value: $(primaryClusterName) + - step: MongoClusters_CreateOrUpdate + variables: + location: $(primaryRegion) + exampleFile: ../examples/MongoClusters_Create.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - replace: /resource/location + value: $(primaryRegion) + - replace: /resource/properties/administrator/password + value: $(administratorLoginPassword) + - add: /resource/properties/previewFeatures + value: + - GeoReplicas + - step: MongoClusters_ListByResourceGroup + exampleFile: ../examples/MongoClusters_ListByResourceGroup.json + - step: MongoClusters_Get + exampleFile: ../examples/MongoClusters_Get.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + outputVariables: + sourceResourceId: + type: string + fromResponse: /id + - step: FirewallRules_CreateOrUpdate + exampleFile: ../examples/MongoClusters_FirewallRuleCreate.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: FirewallRules_ListByMongoCluster + exampleFile: ../examples/MongoClusters_FirewallRuleList.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: FirewallRules_Get + exampleFile: ../examples/MongoClusters_FirewallRuleGet.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ListConnectionStrings + exampleFile: ../examples/MongoClusters_ListConnectionStrings.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_UpdateDiskSize + exampleFile: ../examples/MongoClusters_PatchDiskSize.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: FirewallRules_Delete + exampleFile: ../examples/MongoClusters_FirewallRuleDelete.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ResetPassword + exampleFile: ../examples/MongoClusters_ResetPassword.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - replace: /properties/properties/administrator/password + value: $(administratorLoginPassword2) + - step: Check_Replica_NameAvailability + exampleFile: ../examples/MongoClusters_NameAvailability.json + requestUpdate: + - replace: /body/name + value: $(replicaClusterName) + - step: MongoClusters_CreateGeoReplica + variables: + location: $(replicaRegion) + exampleFile: ../examples/MongoClusters_CreateGeoReplica.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - replace: /resource/location + value: $(replicaRegion) + - replace: /resource/properties/replicaParameters/sourceResourceId + value: $(sourceResourceId) + - replace: /resource/properties/replicaParameters/sourceLocation + value: $(primaryRegion) + - step: MongoClusters_ListByResourceGroup_WithReplicas + exampleFile: ../examples/MongoClusters_ListByResourceGroup.json + - step: MongoClusters_Get_Replica + exampleFile: ../examples/MongoClusters_Get.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - step: MongoClusters_ReplicaList + exampleFile: ../examples/MongoClusters_ReplicaList.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ForcePromoteReplica + exampleFile: ../examples/MongoClusters_ForcePromoteReplica.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - step: MongoClusters_ReplicaList_PostPromote + exampleFile: ../examples/MongoClusters_ReplicaList.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - step: MongoClusters_ForcePromoteReplica_2 + exampleFile: ../examples/MongoClusters_ForcePromoteReplica.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ReplicaList_PostPromote_2 + exampleFile: ../examples/MongoClusters_ReplicaList.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_Delete_Replica + exampleFile: ../examples/MongoClusters_Delete.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) \ No newline at end of file diff --git a/swagger-specs/mongocluster/resource-manager/api-set.json b/swagger-specs/mongocluster/resource-manager/api-set.json index 85a74bc2d..6a65addb1 100644 --- a/swagger-specs/mongocluster/resource-manager/api-set.json +++ b/swagger-specs/mongocluster/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.DocumentDB/preview/2024-03-01-preview/mongoCluster.json"], "name": "package-2024-03-01-preview"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.DocumentDB/stable/2024-07-01/mongoCluster.json"], "name": "package-2024-07-01"} \ No newline at end of file diff --git a/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json b/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json index bd2a573ed..a395066fb 100644 --- a/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json +++ b/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/portal.json @@ -1,21 +1,23 @@ { "swagger": "2.0", "info": { - "version": "2020-09-01-preview", "title": "portal", + "version": "2020-09-01-preview", "description": "Allows creation and deletion of Azure Shared Dashboards.", - "x-ms-code-generation-settings": { - "name": "portalClient" - } + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] }, - "host": "management.azure.com", "schemes": [ "https" ], - "consumes": [ + "host": "management.azure.com", + "produces": [ "application/json" ], - "produces": [ + "consumes": [ "application/json" ], "security": [ @@ -28,535 +30,535 @@ "securityDefinitions": { "azure_auth": { "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow.", "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "scopes": { "user_impersonation": "impersonate your user account" } } }, + "tags": [ + { + "name": "Operations" + }, + { + "name": "Dashboards" + } + ], "paths": { "/providers/Microsoft.Portal/operations": { "get": { + "operationId": "Operations_List", "tags": [ "Operations" ], - "operationId": "Operations_List", - "x-ms-examples": { - "List the portal operations": { - "$ref": "examples/operationsList.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "description": "The Microsoft Portal operations API.", + "description": "List the operations for the provider", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { - "description": "Describe the result of a successful operation.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ResourceProviderOperationList" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "List of operations.": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Portal/dashboards/{dashboardName}": { - "put": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Portal/dashboards": { + "get": { + "operationId": "Dashboards_ListBySubscription", "tags": [ - "Dashboard" + "Dashboards" ], - "operationId": "Dashboards_CreateOrUpdate", - "x-ms-examples": { - "Create or update a Dashboard": { - "$ref": "examples/createOrUpdateDashboard.json" - } - }, - "description": "Creates or updates a Dashboard.", + "description": "Gets all the dashboards within a subscription.", "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/DashboardNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "dashboard", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Dashboard" - }, - "description": "The parameters required to create or update a dashboard." + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { - "201": { - "description": "Created response definition. Resource has been created", - "schema": { - "$ref": "#/definitions/Dashboard" - } - }, "200": { - "description": "Resource already exists.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/Dashboard" + "$ref": "#/definitions/DashboardListResult" } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - }, - "delete": { - "tags": [ - "Dashboard" - ], - "operationId": "Dashboards_Delete", "x-ms-examples": { - "Delete a Dashboard": { - "$ref": "examples/deleteDashboard.json" + "List all custom resource providers on the subscription": { + "$ref": "./examples/Dashboards_ListBySubscription.json" } }, - "description": "Deletes the Dashboard.", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Portal/dashboards": { + "get": { + "operationId": "Dashboards_ListByResourceGroup", + "tags": [ + "Dashboards" + ], + "description": "Gets all the Dashboards within a resource group.", "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/DashboardNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" } ], "responses": { "200": { - "description": "OK response definition." - }, - "204": { - "description": "OK resource was not found." + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/DashboardListResult" + } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - }, - "get": { - "tags": [ - "Dashboard" - ], - "operationId": "Dashboards_Get", "x-ms-examples": { - "Get a Dashboard": { - "$ref": "examples/getDashboard.json" + "List all custom resource providers on the resourceGroup": { + "$ref": "./examples/Dashboards_ListByResourceGroup.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Portal/dashboards/{dashboardName}": { + "get": { + "operationId": "Dashboards_Get", + "tags": [ + "Dashboards" + ], "description": "Gets the Dashboard.", "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/DashboardNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "dashboardName", + "in": "path", + "description": "The name of the dashboard.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 64, + "pattern": "^[a-zA-Z0-9-]{3,24}$" } ], "responses": { "200": { - "description": "OK response definition.", + "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/Dashboard" } }, - "404": { - "description": "Not found. Dashboard with provided id doesn't exist." - }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + "x-ms-examples": { + "Get a Dashboard": { + "$ref": "./examples/Dashboards_Get.json" + } + } }, - "patch": { + "put": { + "operationId": "Dashboards_CreateOrUpdate", "tags": [ - "Dashboard" + "Dashboards" ], - "operationId": "Dashboards_Update", - "x-ms-examples": { - "Update a Dashboard": { - "$ref": "examples/updateDashboard.json" - } - }, - "description": "Updates an existing Dashboard.", + "description": "Creates or updates a Dashboard.", "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/DashboardNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "dashboardName", + "in": "path", + "description": "The name of the dashboard.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 64, + "pattern": "^[a-zA-Z0-9-]{3,24}$" }, { "name": "dashboard", "in": "body", + "description": "The parameters required to create or update a dashboard.", "required": true, "schema": { - "$ref": "#/definitions/PatchableDashboard" + "$ref": "#/definitions/Dashboard" }, - "description": "The updatable fields of a Dashboard." + "x-ms-client-name": "resource" } ], "responses": { "200": { - "description": "OK response definition.", + "description": "Resource 'Dashboard' update operation succeeded", "schema": { "$ref": "#/definitions/Dashboard" } }, - "404": { - "description": "Not found. Dashboard with provided id doesn't exist." + "201": { + "description": "Resource 'Dashboard' create operation succeeded", + "schema": { + "$ref": "#/definitions/Dashboard" + } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Portal/dashboards": { - "get": { - "tags": [ - "Dashboard" - ], - "operationId": "Dashboards_ListByResourceGroup", "x-ms-examples": { - "List all custom resource providers on the resourceGroup": { - "$ref": "examples/listDashboardsByResourceGroup.json" + "Create or update a Dashboard": { + "$ref": "./examples/Dashboards_CreateOrUpdate.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "description": "Gets all the Dashboards within a resource group.", + } + }, + "patch": { + "operationId": "Dashboards_Update", + "tags": [ + "Dashboards" + ], + "description": "Updates an existing Dashboard.", "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "dashboardName", + "in": "path", + "description": "The name of the dashboard.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 64, + "pattern": "^[a-zA-Z0-9-]{3,24}$" + }, + { + "name": "dashboard", + "in": "body", + "description": "The updatable fields of a Dashboard.", + "required": true, + "schema": { + "$ref": "#/definitions/PatchableDashboard" + }, + "x-ms-client-name": "properties" } ], "responses": { "200": { - "description": "OK - Returns an array of Dashboards.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/DashboardListResult" + "$ref": "#/definitions/Dashboard" } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Portal/dashboards": { - "get": { - "tags": [ - "Dashboard" - ], - "operationId": "Dashboards_ListBySubscription", "x-ms-examples": { - "List all custom resource providers on the subscription": { - "$ref": "examples/listDashboardsBySubscription.json" + "Update a Dashboard": { + "$ref": "./examples/Dashboards_Update.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "description": "Gets all the dashboards within a subscription.", + } + }, + "delete": { + "operationId": "Dashboards_Delete", + "tags": [ + "Dashboards" + ], + "description": "Deletes the Dashboard.", "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "dashboardName", + "in": "path", + "description": "The name of the dashboard.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 64, + "pattern": "^[a-zA-Z0-9-]{3,24}$" } ], "responses": { "200": { - "description": "OK - Returns an array of dashboards.", - "schema": { - "$ref": "#/definitions/DashboardListResult" - } + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + "x-ms-examples": { + "Delete a Dashboard": { + "$ref": "./examples/Dashboards_Delete.json" + } + } } } }, "definitions": { - "DashboardListResult": { + "Azure.ResourceManager.ResourceProvisioningState": { + "type": "string", + "description": "The provisioning state of a resource type.", + "enum": [ + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ResourceProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Resource has been created." + }, + { + "name": "Failed", + "value": "Failed", + "description": "Resource creation failed." + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "Resource creation was canceled." + } + ] + }, + "readOnly": true + }, + "Dashboard": { "type": "object", + "description": "The shared dashboard resource definition.", "properties": { - "value": { + "properties": { + "$ref": "#/definitions/DashboardPropertiesWithProvisioningState", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ] + }, + "DashboardLens": { + "type": "object", + "description": "A dashboard lens.", + "properties": { + "order": { + "type": "integer", + "format": "int32", + "description": "The lens order." + }, + "parts": { "type": "array", + "description": "The dashboard parts.", "items": { - "$ref": "#/definitions/Dashboard" + "$ref": "#/definitions/DashboardParts" }, - "description": "The array of custom resource provider manifests." + "x-ms-identifiers": [] }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." + "metadata": { + "type": "object", + "description": "The dashboard len's metadata." } }, - "description": "List of dashboards." + "required": [ + "order", + "parts" + ] }, - "DashboardParts": { + "DashboardListResult": { "type": "object", - "description": "A dashboard part.", - "required": [ - "position" - ], + "description": "The response of a Dashboard list operation.", "properties": { - "position": { - "type": "object", - "required": [ - "x", - "y", - "rowSpan", - "colSpan" - ], - "description": "The dashboard's part position.", - "properties": { - "x": { - "type": "integer", - "format": "int32", - "description": "The dashboard's part x coordinate." - }, - "y": { - "type": "integer", - "format": "int32", - "description": "The dashboard's part y coordinate." - }, - "rowSpan": { - "type": "integer", - "format": "int32", - "description": "The dashboard's part row span." - }, - "colSpan": { - "type": "integer", - "format": "int32", - "description": "The dashboard's part column span." - }, - "metadata": { - "description": "The dashboard part's metadata.", - "type": "object", - "additionalProperties": { - "type": "object" - } - } + "value": { + "type": "array", + "description": "The Dashboard items on this page", + "items": { + "$ref": "#/definitions/Dashboard" } }, - "metadata": { - "description": "The dashboard part's metadata.", - "type": "object", - "$ref": "#/definitions/DashboardPartMetadata" + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, "DashboardPartMetadata": { "type": "object", - "required": [ - "type" - ], "description": "A dashboard part metadata.", - "additionalProperties": true, "properties": { "type": { - "type": "string", - "description": "The type of dashboard part." + "$ref": "#/definitions/DashboardPartMetadataType" } }, - "discriminator": "type" + "discriminator": "type", + "required": [ + "type" + ] }, - "MarkdownPartMetadata": { - "type": "object", - "description": "Markdown part metadata.", - "x-ms-discriminator-value": "Extension/HubsExtension/PartType/MarkdownPart", - "allOf": [ - { - "$ref": "#/definitions/DashboardPartMetadata" - } + "DashboardPartMetadataType": { + "type": "string", + "description": "The dashboard part metadata type.", + "enum": [ + "Extension/HubsExtension/PartType/MarkdownPart" ], - "properties": { - "inputs": { - "type": "array", - "description": "Input to dashboard part.", - "items": { - "type": "object" - }, - "x-ms-identifiers": [] - }, - "settings": { - "type": "object", - "description": "Markdown part settings.", - "properties": { - "content": { - "type": "object", - "description": "The content of markdown part.", - "properties": { - "settings": { - "type": "object", - "description": "The setting of the content of markdown part.", - "properties": { - "content": { - "type": "string", - "description": "The content of the markdown part." - }, - "title": { - "type": "string", - "description": "The title of the markdown part." - }, - "subtitle": { - "type": "string", - "description": "The subtitle of the markdown part." - }, - "markdownSource": { - "type": "integer", - "format": "int32", - "description": "The source of the content of the markdown part." - }, - "markdownUri": { - "type": "string", - "description": "The uri of markdown content." - } - } - } - } - } + "x-ms-enum": { + "name": "DashboardPartMetadataType", + "modelAsString": true, + "values": [ + { + "name": "markdown", + "value": "Extension/HubsExtension/PartType/MarkdownPart", + "description": "The markdown part type." } - } + ] } }, - "DashboardLens": { + "DashboardParts": { "type": "object", - "description": "A dashboard lens.", + "description": "A dashboard part.", + "properties": { + "position": { + "$ref": "#/definitions/DashboardPartsPosition", + "description": "The dashboard's part position." + }, + "metadata": { + "$ref": "#/definitions/DashboardPartMetadata", + "description": "The dashboard part's metadata." + } + }, "required": [ - "order", - "parts" - ], + "position" + ] + }, + "DashboardPartsPosition": { + "type": "object", + "description": "The dashboard's part position.", "properties": { - "order": { + "x": { "type": "integer", "format": "int32", - "description": "The lens order." + "description": "The dashboard's part x coordinate." }, - "parts": { - "type": "array", - "description": "The dashboard parts.", - "items": { - "$ref": "#/definitions/DashboardParts" - }, - "x-ms-identifiers": [] + "y": { + "type": "integer", + "format": "int32", + "description": "The dashboard's part y coordinate." + }, + "rowSpan": { + "type": "integer", + "format": "int32", + "description": "The dashboard's part row span." + }, + "colSpan": { + "type": "integer", + "format": "int32", + "description": "The dashboard's part column span." }, "metadata": { - "description": "The dashboard len's metadata.", "type": "object", - "additionalProperties": { - "type": "object" - } + "description": "The dashboard part's metadata." } - } + }, + "required": [ + "x", + "y", + "rowSpan", + "colSpan" + ] }, "DashboardProperties": { "type": "object", @@ -571,208 +573,122 @@ "x-ms-identifiers": [] }, "metadata": { - "description": "The dashboard metadata.", "type": "object", - "additionalProperties": { - "type": "object" - } + "description": "The dashboard metadata." } } }, - "Dashboard": { + "DashboardPropertiesWithProvisioningState": { "type": "object", - "description": "The shared dashboard resource definition.", - "x-ms-azure-resource": true, - "x-ms-client-flatten": true, - "required": [ - "location" - ], + "description": "Dashboard Properties with Provisioning state", "properties": { - "properties": { - "description": "The shared dashboard properties.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/DashboardProperties" - }, - "id": { - "readOnly": true, - "type": "string", - "description": "Resource Id" - }, - "name": { - "readOnly": true, - "type": "string", - "description": "Resource name" - }, - "type": { - "readOnly": true, - "type": "string", - "description": "Resource type" - }, - "location": { - "type": "string", - "description": "Resource location", - "x-ms-mutability": [ - "read", - "create" - ] - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" + "lenses": { + "type": "array", + "description": "The dashboard lenses.", + "items": { + "$ref": "#/definitions/DashboardLens" }, - "description": "Resource tags" - } - } - }, - "PatchableDashboard": { - "type": "object", - "description": "The shared dashboard resource definition.", - "x-ms-azure-resource": true, - "x-ms-client-flatten": true, - "properties": { - "properties": { - "description": "The shared dashboard properties.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/DashboardProperties" + "x-ms-identifiers": [] }, - "tags": { + "metadata": { "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Resource tags" + "description": "The dashboard metadata." + }, + "provisioningState": { + "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState", + "description": "The status of the last operation.", + "readOnly": true } } }, - "ResourceProviderOperationList": { + "MarkdownPartMetadata": { "type": "object", - "description": "Results of the request to list operations.", - "readOnly": true, + "description": "Markdown part metadata.", "properties": { - "value": { + "inputs": { "type": "array", + "description": "Input to dashboard part.", "items": { - "$ref": "#/definitions/ResourceProviderOperation" + "type": "object" }, - "x-ms-identifiers": [ - "name" - ], - "description": "List of operations supported by this resource provider." + "x-ms-identifiers": [] }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." + "settings": { + "$ref": "#/definitions/MarkdownPartMetadataSettings", + "description": "Markdown part settings." } - } + }, + "allOf": [ + { + "$ref": "#/definitions/DashboardPartMetadata" + } + ], + "x-ms-discriminator-value": "Extension/HubsExtension/PartType/MarkdownPart" }, - "ResourceProviderOperation": { + "MarkdownPartMetadataSettings": { "type": "object", - "description": "Supported operations of this resource provider.", - "readOnly": true, + "description": "Markdown part settings.", "properties": { - "name": { - "description": "Operation name, in format of {provider}/{resource}/{operation}", - "type": "string" - }, - "isDataAction": { - "description": "Indicates whether the operation applies to data-plane.", - "type": "string" - }, - "display": { - "description": "Display metadata associated with the operation.", - "properties": { - "provider": { - "description": "Resource provider: Microsoft Custom Providers.", - "type": "string" - }, - "resource": { - "description": "Resource on which the operation is performed.", - "type": "string" - }, - "operation": { - "description": "Type of operation: get, read, delete, etc.", - "type": "string" - }, - "description": { - "description": "Description of this operation.", - "type": "string" - } - } + "content": { + "$ref": "#/definitions/MarkdownPartMetadataSettingsContent", + "description": "The content of markdown part." } } }, - "ErrorResponse": { + "MarkdownPartMetadataSettingsContent": { "type": "object", - "description": "Error response.", + "description": "The content of markdown part.", "properties": { - "error": { - "$ref": "#/definitions/ErrorDefinition", - "description": "The error details." + "settings": { + "$ref": "#/definitions/MarkdownPartMetadataSettingsContentSettings", + "description": "The setting of the content of markdown part." } } }, - "ErrorDefinition": { + "MarkdownPartMetadataSettingsContentSettings": { "type": "object", - "description": "Error definition.", + "description": "The setting of the content of markdown part.", "properties": { - "code": { - "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "content": { + "type": "string", + "description": "The content of the markdown part." + }, + "title": { + "type": "string", + "description": "The title of the markdown part." + }, + "subtitle": { + "type": "string", + "description": "The subtitle of the markdown part." + }, + "markdownSource": { "type": "integer", "format": "int32", - "readOnly": true + "description": "The source of the content of the markdown part." }, - "message": { - "description": "Description of the error.", + "markdownUri": { "type": "string", - "readOnly": true + "description": "The uri of markdown content." + } + } + }, + "PatchableDashboard": { + "type": "object", + "description": "The shared dashboard resource definition.", + "properties": { + "properties": { + "$ref": "#/definitions/DashboardProperties", + "description": "The shared dashboard properties." }, - "details": { - "description": "Internal error details.", - "type": "array", - "items": { - "$ref": "#/definitions/ErrorDefinition" - }, - "x-ms-identifiers": [ - "code" - ], - "readOnly": true + "tags": { + "type": "object", + "description": "Resource tags", + "additionalProperties": { + "type": "string" + } } } } }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, - "DashboardNameParameter": { - "name": "dashboardName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the dashboard.", - "minLength": 3, - "maxLength": 64, - "x-ms-parameter-location": "method" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to be used with the HTTP request." - } - } + "parameters": {} } diff --git a/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/tenantConfiguration.json b/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/tenantConfiguration.json index 1aa0d5dd2..e2d43d1ae 100644 --- a/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/tenantConfiguration.json +++ b/swagger-specs/portal/resource-manager/Microsoft.Portal/preview/2020-09-01-preview/tenantConfiguration.json @@ -1,21 +1,23 @@ { "swagger": "2.0", "info": { - "version": "2020-09-01-preview", "title": "portal", - "description": "Manage tenant configuration.", - "x-ms-code-generation-settings": { - "name": "portalClient" - } + "version": "2020-09-01-preview", + "description": "Allows creation and deletion of Azure Shared Dashboards.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] }, - "host": "management.azure.com", "schemes": [ "https" ], - "consumes": [ + "host": "management.azure.com", + "produces": [ "application/json" ], - "produces": [ + "consumes": [ "application/json" ], "security": [ @@ -25,312 +27,359 @@ ] } ], + "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" + } + } + }, + "tags": [ + { + "name": "TenantConfigurations" + }, + { + "name": "ListTenantConfigurationViolationsOperations" + } + ], "paths": { - "/providers/Microsoft.Portal/tenantConfigurations": { - "get": { + "/providers/Microsoft.Portal/listTenantConfigurationViolations": { + "post": { + "operationId": "ListTenantConfigurationViolations_List", "tags": [ - "tenantConfiguration" + "ListTenantConfigurationViolationsOperations" ], - "operationId": "TenantConfigurations_List", - "description": "Gets list of the tenant configurations.", + "description": "Gets list of items that violate tenant's configuration.", "parameters": [ { - "$ref": "portal.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { - "description": "OK. Returns the list of tenant configurations.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ConfigurationList" + "$ref": "#/definitions/ViolationsList" } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "portal.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, + "x-ms-examples": { + "List Tenant configuration Violations": { + "$ref": "./examples/ListTenantConfigurationViolations_List.json" + } + }, "x-ms-pageable": { "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Portal/tenantConfigurations": { + "get": { + "operationId": "TenantConfigurations_List", + "tags": [ + "TenantConfigurations" + ], + "description": "Gets list of the tenant configurations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ConfigurationListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } }, "x-ms-examples": { "Get list of Tenant configurations": { - "$ref": "examples/TenantConfiguration/GetListOfTenantConfigurations.json" + "$ref": "./examples/TenantConfigurations_List.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, "/providers/Microsoft.Portal/tenantConfigurations/{configurationName}": { "get": { + "operationId": "TenantConfigurations_Get", "tags": [ - "tenantConfiguration" + "TenantConfigurations" ], - "operationId": "TenantConfigurations_Get", "description": "Gets the tenant configuration.", "parameters": [ { - "$ref": "#/parameters/ConfigurationNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "portal.json#/parameters/ApiVersionParameter" + "name": "configurationName", + "in": "path", + "description": "The name of the Configuration", + "required": true, + "type": "string", + "pattern": "^(?!con$|prn$|aux$|nul$|com[1-9]$)(?!.*[._-]{2,})[a-zA-Z0-9]([a-zA-Z0-9-._]*[a-zA-Z0-9])?$" } ], "responses": { "200": { - "description": "OK. Returns the tenant configuration.", + "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/Configuration" } }, - "404": { - "description": "Not found. Tenant configuration wasn't created yet." - }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "portal.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Tenant configuration": { - "$ref": "examples/TenantConfiguration/GetTenantConfiguration.json" + "$ref": "./examples/TenantConfigurations_Get.json" } } }, "put": { + "operationId": "TenantConfigurations_Create", "tags": [ - "tenantConfiguration" + "TenantConfigurations" ], - "operationId": "TenantConfigurations_Create", "description": "Create the tenant configuration. If configuration already exists - update it. User has to be a Tenant Admin for this operation.", "parameters": [ { - "$ref": "#/parameters/ConfigurationNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "portal.json#/parameters/ApiVersionParameter" + "name": "configurationName", + "in": "path", + "description": "The name of the Configuration", + "required": true, + "type": "string", + "pattern": "^(?!con$|prn$|aux$|nul$|com[1-9]$)(?!.*[._-]{2,})[a-zA-Z0-9]([a-zA-Z0-9-._]*[a-zA-Z0-9])?$" }, { "name": "tenantConfiguration", "in": "body", + "description": "The parameters required to create or update tenant configuration.", "required": true, "schema": { "$ref": "#/definitions/Configuration" }, - "description": "The parameters required to create or update tenant configuration." + "x-ms-client-name": "resource" } ], "responses": { - "201": { - "description": "Created. New configuration was created", + "200": { + "description": "Resource 'Configuration' update operation succeeded", "schema": { "$ref": "#/definitions/Configuration" } }, - "200": { - "description": "OK. Existing configuration updated.", + "201": { + "description": "Resource 'Configuration' create operation succeeded", "schema": { "$ref": "#/definitions/Configuration" } }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "portal.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create or update Tenant configuration": { - "$ref": "examples/TenantConfiguration/CreateOrUpdateTenantConfiguration.json" + "$ref": "./examples/TenantConfigurations_Create.json" } } }, "delete": { + "operationId": "TenantConfigurations_Delete", "tags": [ - "tenantConfiguration" + "TenantConfigurations" ], - "operationId": "TenantConfigurations_Delete", "description": "Delete the tenant configuration. User has to be a Tenant Admin for this operation.", "parameters": [ { - "$ref": "#/parameters/ConfigurationNameParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "portal.json#/parameters/ApiVersionParameter" + "name": "configurationName", + "in": "path", + "description": "The name of the Configuration", + "required": true, + "type": "string", + "pattern": "^(?!con$|prn$|aux$|nul$|com[1-9]$)(?!.*[._-]{2,})[a-zA-Z0-9]([a-zA-Z0-9-._]*[a-zA-Z0-9])?$" } ], "responses": { "200": { - "description": "OK. Configuration was deleted." + "description": "Resource deleted successfully." }, "204": { - "description": "No content. Configuration was not found." + "description": "Resource does not exist." }, "default": { - "description": "Error response describing why the operation failed.", + "description": "An unexpected error response.", "schema": { - "$ref": "portal.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete Tenant configuration": { - "$ref": "examples/TenantConfiguration/DeleteTenantConfiguration.json" - } - } - } - }, - "/providers/Microsoft.Portal/listTenantConfigurationViolations": { - "post": { - "tags": [ - "listTenantConfigurationViolations" - ], - "operationId": "ListTenantConfigurationViolations_List", - "description": "Gets list of items that violate tenant's configuration.", - "parameters": [ - { - "$ref": "portal.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. Returns the list of items that violate tenant's configuration.", - "schema": { - "$ref": "#/definitions/ViolationsList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "portal.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get list of of items that violate tenant's configuration": { - "$ref": "examples/TenantConfiguration/GetListOfTenantConfigurationViolations.json" + "$ref": "./examples/TenantConfigurations_Delete.json" } } } } }, - "parameters": { - "ConfigurationNameParameter": { - "name": "configurationName", - "in": "path", - "required": true, + "definitions": { + "Azure.ResourceManager.ResourceProvisioningState": { "type": "string", - "description": "The configuration name. Value must be 'default'", + "description": "The provisioning state of a resource type.", "enum": [ - "default" + "Succeeded", + "Failed", + "Canceled" ], "x-ms-enum": { - "name": "configurationName", - "modelAsString": true - }, - "x-ms-parameter-location": "method" - } - }, - "definitions": { - "ConfigurationList": { - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Configuration" + "name": "ResourceProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Resource has been created." }, - "description": "The array of tenant configurations." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } + { + "name": "Failed", + "value": "Failed", + "description": "Resource creation failed." + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "Resource creation was canceled." + } + ] }, - "description": "List of tenant configurations." + "readOnly": true }, "Configuration": { "type": "object", - "description": "Tenant configuration.", + "description": "The tenant configuration resource definition.", "properties": { "properties": { - "x-ms-client-flatten": true, "$ref": "#/definitions/ConfigurationProperties", - "description": "Tenant configuration properties." + "description": "The resource-specific properties for this resource." } }, "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, - "ConfigurationProperties": { - "type": "object", - "description": "Tenant configuration properties.", - "x-ms-azure-resource": true, - "properties": { - "enforcePrivateMarkdownStorage": { - "type": "boolean", - "description": "When flag is set to true Markdown tile will require external storage configuration (URI). The inline content configuration will be prohibited." - } - } - }, - "ViolationsList": { + "ConfigurationListResult": { "type": "object", + "description": "The response of a Configuration list operation.", "properties": { "value": { "type": "array", + "description": "The Configuration items on this page", "items": { - "$ref": "#/definitions/Violation" - }, - "description": "The array of violations." + "$ref": "#/definitions/Configuration" + } }, "nextLink": { "type": "string", - "description": "The URL to use for getting the next set of results." + "format": "uri", + "description": "The link to the next page of items" } }, - "description": "List of list of items that violate tenant's configuration." + "required": [ + "value" + ] + }, + "ConfigurationProperties": { + "type": "object", + "description": "Tenant Configuration Properties with Provisioning state", + "properties": { + "enforcePrivateMarkdownStorage": { + "type": "boolean", + "description": "When flag is set to true Markdown tile will require external storage configuration (URI). The inline content configuration will be prohibited." + }, + "provisioningState": { + "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState", + "description": "The status of the last operation.", + "readOnly": true + } + } }, "Violation": { "type": "object", "description": "Violation information.", "properties": { "id": { - "description": "Id of the item that violates tenant configuration.", "type": "string", + "description": "Id of the item that violates tenant configuration.", "readOnly": true }, "userId": { - "description": "Id of the user who owns violated item.", "type": "string", + "description": "Id of the user who owns violated item.", "readOnly": true }, "errorMessage": { - "description": "Error message.", "type": "string", + "description": "Error message.", "readOnly": true } } + }, + "ViolationsList": { + "type": "object", + "description": "List of list of items that violate tenant's configuration.", + "properties": { + "value": { + "type": "array", + "description": "The Violation items on this page", + "items": { + "$ref": "#/definitions/Violation" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] } }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - } + "parameters": {} } diff --git a/swagger-specs/search/data-plane/Azure.Search/api-set.json b/swagger-specs/search/data-plane/Azure.Search/api-set.json index 7e7e9ae8e..e290a4de6 100644 --- a/swagger-specs/search/data-plane/Azure.Search/api-set.json +++ b/swagger-specs/search/data-plane/Azure.Search/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["stable/2024-07-01/searchservice.json", "stable/2024-07-01/searchindex.json"], "name": "package-2024-07-01"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["preview/2024-09-01-preview/searchservice.json", "preview/2024-09-01-preview/searchindex.json"], "name": "package-2024-09-01-preview"} \ No newline at end of file diff --git a/swagger-specs/search/data-plane/Azure.Search/stable/2024-07-01/searchindex.json b/swagger-specs/search/data-plane/Azure.Search/preview/2024-09-01-preview/searchindex.json similarity index 72% rename from swagger-specs/search/data-plane/Azure.Search/stable/2024-07-01/searchindex.json rename to swagger-specs/search/data-plane/Azure.Search/preview/2024-09-01-preview/searchindex.json index 0ef09404d..f129e0ae7 100644 --- a/swagger-specs/search/data-plane/Azure.Search/stable/2024-07-01/searchindex.json +++ b/swagger-specs/search/data-plane/Azure.Search/preview/2024-09-01-preview/searchindex.json @@ -3,7 +3,7 @@ "info": { "title": "SearchIndexClient", "description": "Client that can be used to query an index and upload, merge, or delete documents.", - "version": "2024-07-01", + "version": "2024-09-01-preview", "x-ms-code-generation-settings": { "useDateTimeOffset": true, "syncMethods": "None" @@ -476,6 +476,111 @@ "x-ms-parameter-grouping": { "name": "SearchOptions" } + }, + { + "name": "debug", + "in": "query", + "type": "string", + "enum": [ + "disabled", + "semantic", + "vector" + ], + "x-ms-enum": { + "name": "QueryDebugMode", + "modelAsString": true, + "values": [ + { + "value": "disabled", + "name": "Disabled", + "description": "No query debugging information will be returned." + }, + { + "value": "semantic", + "name": "Semantic", + "description": "Allows the user to further explore their reranked results." + }, + { + "value": "vector", + "name": "Vector", + "description": "Allows the user to further explore their hybrid and vector query results." + } + ] + }, + "description": "Enables a debugging tool that can be used to further explore your search results.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "queryLanguage", + "in": "query", + "type": "string", + "enum": [ + "none", + "en-us" + ], + "x-ms-enum": { + "name": "QueryLanguage", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Query language not specified." + }, + { + "value": "en-us", + "name": "EnUs", + "description": "English (US)" + } + ] + }, + "description": "The language of the query.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "speller", + "in": "query", + "type": "string", + "enum": [ + "none", + "lexicon" + ], + "x-ms-enum": { + "name": "Speller", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Speller not enabled." + }, + { + "value": "lexicon", + "name": "Lexicon", + "description": "Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter." + } + ] + }, + "description": "Improve search recall by spell-correcting individual search query terms.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "semanticFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names used for semantic ranking.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } } ], "x-ms-request-id": "request-id", @@ -1236,6 +1341,16 @@ "x-ms-client-name": "Captions", "x-nullable": true, "description": "Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type 'semantic'." + }, + "@search.documentDebugInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/DocumentDebugInfo" + }, + "readOnly": true, + "x-ms-client-name": "DocumentDebugInfo", + "x-nullable": true, + "description": "Contains debugging information that can be used to further explore your search results." } }, "required": [ @@ -1360,6 +1475,30 @@ ], "description": "Response containing the status of operations for all documents in the indexing request." }, + "QueryDebugMode": { + "type": "string", + "enum": [ + "disabled", + "semantic" + ], + "x-ms-enum": { + "name": "QueryDebugMode", + "modelAsString": true, + "values": [ + { + "value": "disabled", + "name": "Disabled", + "description": "No query debugging information will be returned." + }, + { + "value": "semantic", + "name": "Semantic", + "description": "Allows the user to further explore their reranked results." + } + ] + }, + "description": "Enables a debugging tool that can be used to further explore your search results." + }, "SearchMode": { "type": "string", "enum": [ @@ -1412,7 +1551,31 @@ } ] }, - "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax and 'semantic' if query syntax is not needed." + }, + "Speller": { + "type": "string", + "enum": [ + "none", + "lexicon" + ], + "x-ms-enum": { + "name": "QuerySpellerType", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Speller not enabled." + }, + { + "value": "lexicon", + "name": "Lexicon", + "description": "Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter." + } + ] + }, + "description": "Improve search recall by spell-correcting individual search query terms." }, "VectorQuery": { "type": "object", @@ -1445,6 +1608,14 @@ "type": "number", "format": "float", "description": "Relative weight of the vector query when compared to other vector query and/or the text query within the same search request. This value is used when combining the results of multiple ranking lists produced by the different vector queries and/or the results retrieved through the text query. The higher the weight, the higher the documents that matched that query will be in the final ranking. Default is 1.0 and the value needs to be a positive number larger than zero. " + }, + "threshold": { + "$ref": "#/definitions/VectorThreshold", + "description": "The threshold used for vector queries. Note this can only be set if all 'fields' use the same similarity metric." + }, + "filterOverride": { + "type": "string", + "description": "The OData filter expression to apply to this specific vector query. If no filter expression is defined at the vector level, the expression defined in the top level filter parameter is used instead." } }, "required": [ @@ -1495,11 +1666,45 @@ ], "description": "The query parameters to use for vector search when a text value that needs to be vectorized is provided." }, + "VectorizableImageUrlQuery": { + "type": "object", + "x-ms-discriminator-value": "imageUrl", + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "properties": { + "url": { + "type": "string", + "description": "The URL of an image to be vectorized to perform a vector search query." + } + }, + "description": "The query parameters to use for vector search when an url that represents an image value that needs to be vectorized is provided." + }, + "VectorizableImageBinaryQuery": { + "type": "object", + "x-ms-discriminator-value": "imageBinary", + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "properties": { + "base64Image": { + "type": "string", + "description": "The base 64 encoded binary of an image to be vectorized to perform a vector search query." + } + }, + "description": "The query parameters to use for vector search when a base 64 encoded binary of an image that needs to be vectorized is provided." + }, "VectorQueryKind": { "type": "string", "enum": [ "vector", - "text" + "text", + "imageUrl", + "imageBinary" ], "x-ms-enum": { "name": "VectorQueryKind", @@ -1514,6 +1719,95 @@ "value": "text", "name": "Text", "description": "Vector query where a text value that needs to be vectorized is provided." + }, + { + "value": "imageUrl", + "name": "ImageUrl", + "description": "Vector query where an url that represents an image value that needs to be vectorized is provided." + }, + { + "value": "imageBinary", + "name": "ImageBinary", + "description": "Vector query where a base 64 encoded binary of an image that needs to be vectorized is provided." + } + ] + }, + "description": "The kind of vector query being performed." + }, + "VectorThreshold": { + "type": "object", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/VectorThresholdKind", + "description": "The kind of threshold used to filter vector queries", + "x-nullable": false + } + }, + "required": [ + "kind" + ], + "description": "The threshold used for vector queries." + }, + "VectorSimilarityThreshold": { + "type": "object", + "x-ms-discriminator-value": "vectorSimilarity", + "allOf": [ + { + "$ref": "#/definitions/VectorThreshold" + } + ], + "properties": { + "value": { + "type": "number", + "format": "double", + "description": "The threshold will filter based on the similarity metric value. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field." + } + }, + "required": [ + "value" + ], + "description": "The results of the vector query will be filtered based on the vector similarity metric. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field." + }, + "SearchScoreThreshold": { + "type": "object", + "x-ms-discriminator-value": "searchScore", + "allOf": [ + { + "$ref": "#/definitions/VectorThreshold" + } + ], + "properties": { + "value": { + "type": "number", + "format": "double", + "description": "The threshold will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score." + } + }, + "required": [ + "value" + ], + "description": "The results of the vector query will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score." + }, + "VectorThresholdKind": { + "type": "string", + "enum": [ + "vectorSimilarity", + "searchScore" + ], + "x-ms-enum": { + "name": "VectorThresholdKind", + "modelAsString": true, + "values": [ + { + "value": "vectorSimilarity", + "name": "VectorSimilarity", + "description": "The results of the vector query will be filtered based on the vector similarity metric. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field." + }, + { + "value": "searchScore", + "name": "SearchScore", + "description": "The results of the vector query will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score." } ] }, @@ -1543,6 +1837,489 @@ }, "description": "Determines whether or not filters are applied before or after the vector search is performed." }, + "HybridSearch": { + "type": "object", + "properties": { + "maxTextRecallSize": { + "type": "integer", + "format": "int32", + "description": "Determines the maximum number of documents to be retrieved by the text query portion of a hybrid search request. Those documents will be combined with the documents matching the vector queries to produce a single final list of results. Choosing a larger maxTextRecallSize value will allow retrieving and paging through more documents (using the top and skip parameters), at the cost of higher resource utilization and higher latency. The value needs to be between 1 and 10,000. Default is 1000." + }, + "countAndFacetMode": { + "$ref": "#/definitions/HybridCountAndFacetMode", + "description": "Determines whether the count and facets should includes all documents that matched the search query, or only the documents that are retrieved within the 'maxTextRecallSize' window." + } + }, + "description": "TThe query parameters to configure hybrid search behaviors." + }, + "HybridCountAndFacetMode": { + "type": "string", + "enum": [ + "countRetrievableResults", + "countAllResults" + ], + "x-ms-enum": { + "name": "HybridCountAndFacetMode", + "modelAsString": true, + "values": [ + { + "value": "countRetrievableResults", + "name": "CountRetrievableResults", + "description": "Only include documents that were matched within the 'maxTextRecallSize' retrieval window when computing 'count' and 'facets'." + }, + { + "value": "countAllResults", + "name": "CountAllResults", + "description": "Include all documents that were matched by the search query when computing 'count' and 'facets', regardless of whether or not those documents are within the 'maxTextRecallSize' retrieval window." + } + ] + }, + "description": "Determines whether the count and facets should includes all documents that matched the search query, or only the documents that are retrieved within the 'maxTextRecallSize' window. The default value is 'countAllResults'." + }, + "QueryLanguage": { + "type": "string", + "enum": [ + "none", + "en-us", + "en-gb", + "en-in", + "en-ca", + "en-au", + "fr-fr", + "fr-ca", + "de-de", + "es-es", + "es-mx", + "zh-cn", + "zh-tw", + "pt-br", + "pt-pt", + "it-it", + "ja-jp", + "ko-kr", + "ru-ru", + "cs-cz", + "nl-be", + "nl-nl", + "hu-hu", + "pl-pl", + "sv-se", + "tr-tr", + "hi-in", + "ar-sa", + "ar-eg", + "ar-ma", + "ar-kw", + "ar-jo", + "da-dk", + "no-no", + "bg-bg", + "hr-hr", + "hr-ba", + "ms-my", + "ms-bn", + "sl-sl", + "ta-in", + "vi-vn", + "el-gr", + "ro-ro", + "is-is", + "id-id", + "th-th", + "lt-lt", + "uk-ua", + "lv-lv", + "et-ee", + "ca-es", + "fi-fi", + "sr-ba", + "sr-me", + "sr-rs", + "sk-sk", + "nb-no", + "hy-am", + "bn-in", + "eu-es", + "gl-es", + "gu-in", + "he-il", + "ga-ie", + "kn-in", + "ml-in", + "mr-in", + "fa-ae", + "pa-in", + "te-in", + "ur-pk" + ], + "x-ms-enum": { + "name": "QueryLanguage", + "modelAsString": true, + "values": [ + { + "value": "none", + "name": "None", + "description": "Query language not specified." + }, + { + "value": "en-us", + "name": "EnUs", + "description": "Query language value for English (United States)." + }, + { + "value": "en-gb", + "name": "EnGb", + "description": "Query language value for English (Great Britain)." + }, + { + "value": "en-in", + "name": "EnIn", + "description": "Query language value for English (India)." + }, + { + "value": "en-ca", + "name": "EnCa", + "description": "Query language value for English (Canada)." + }, + { + "value": "en-au", + "name": "EnAu", + "description": "Query language value for English (Australia)." + }, + { + "value": "fr-fr", + "name": "FrFr", + "description": "Query language value for French (France)." + }, + { + "value": "fr-ca", + "name": "FrCa", + "description": "Query language value for French (Canada)." + }, + { + "value": "de-de", + "name": "DeDe", + "description": "Query language value for German (Germany)." + }, + { + "value": "es-es", + "name": "EsEs", + "description": "Query language value for Spanish (Spain)." + }, + { + "value": "es-mx", + "name": "EsMx", + "description": "Query language value for Spanish (Mexico)." + }, + { + "value": "zh-cn", + "name": "ZhCn", + "description": "Query language value for Chinese (China)." + }, + { + "value": "zh-tw", + "name": "ZhTw", + "description": "Query language value for Chinese (Taiwan)." + }, + { + "value": "pt-br", + "name": "PtBr", + "description": "Query language value for Portuguese (Brazil)." + }, + { + "value": "pt-pt", + "name": "PtPt", + "description": "Query language value for Portuguese (Portugal)." + }, + { + "value": "it-it", + "name": "ItIt", + "description": "Query language value for Italian (Italy)." + }, + { + "value": "ja-jp", + "name": "JaJp", + "description": "Query language value for Japanese (Japan)." + }, + { + "value": "ko-kr", + "name": "KoKr", + "description": "Query language value for Korean (Korea)." + }, + { + "value": "ru-ru", + "name": "RuRu", + "description": "Query language value for Russian (Russia)." + }, + { + "value": "cs-cz", + "name": "CsCz", + "description": "Query language value for Czech (Czech Republic)." + }, + { + "value": "nl-be", + "name": "NlBe", + "description": "Query language value for Dutch (Belgium)." + }, + { + "value": "nl-nl", + "name": "NlNl", + "description": "Query language value for Dutch (Netherlands)." + }, + { + "value": "hu-hu", + "name": "HuHu", + "description": "Query language value for Hungarian (Hungary)." + }, + { + "value": "pl-pl", + "name": "PlPl", + "description": "Query language value for Polish (Poland)." + }, + { + "value": "sv-se", + "name": "SvSe", + "description": "Query language value for Swedish (Sweden)." + }, + { + "value": "tr-tr", + "name": "TrTr", + "description": "Query language value for Turkish (Turkey)." + }, + { + "value": "hi-in", + "name": "HiIn", + "description": "Query language value for Hindi (India)." + }, + { + "value": "ar-sa", + "name": "ArSa", + "description": "Query language value for Arabic (Saudi Arabia)." + }, + { + "value": "ar-eg", + "name": "ArEg", + "description": "Query language value for Arabic (Egypt)." + }, + { + "value": "ar-ma", + "name": "ArMa", + "description": "Query language value for Arabic (Morocco)." + }, + { + "value": "ar-kw", + "name": "ArKw", + "description": "Query language value for Arabic (Kuwait)." + }, + { + "value": "ar-jo", + "name": "ArJo", + "description": "Query language value for Arabic (Jordan)." + }, + { + "value": "da-dk", + "name": "DaDk", + "description": "Query language value for Danish (Denmark)." + }, + { + "value": "no-no", + "name": "NoNo", + "description": "Query language value for Norwegian (Norway)." + }, + { + "value": "bg-bg", + "name": "BgBg", + "description": "Query language value for Bulgarian (Bulgaria)." + }, + { + "value": "hr-hr", + "name": "HrHr", + "description": "Query language value for Croatian (Croatia)." + }, + { + "value": "hr-ba", + "name": "HrBa", + "description": "Query language value for Croatian (Bosnia and Herzegovina)." + }, + { + "value": "ms-my", + "name": "MsMy", + "description": "Query language value for Malay (Malaysia)." + }, + { + "value": "ms-bn", + "name": "MsBn", + "description": "Query language value for Malay (Brunei Darussalam)." + }, + { + "value": "sl-sl", + "name": "SlSl", + "description": "Query language value for Slovenian (Slovenia)." + }, + { + "value": "ta-in", + "name": "TaIn", + "description": "Query language value for Tamil (India)." + }, + { + "value": "vi-vn", + "name": "ViVn", + "description": "Query language value for Vietnamese (Viet Nam)." + }, + { + "value": "el-gr", + "name": "ElGr", + "description": "Query language value for Greek (Greece)." + }, + { + "value": "ro-ro", + "name": "RoRo", + "description": "Query language value for Romanian (Romania)." + }, + { + "value": "is-is", + "name": "IsIs", + "description": "Query language value for Icelandic (Iceland)." + }, + { + "value": "id-id", + "name": "IdId", + "description": "Query language value for Indonesian (Indonesia)." + }, + { + "value": "th-th", + "name": "ThTh", + "description": "Query language value for Thai (Thailand)." + }, + { + "value": "lt-lt", + "name": "LtLt", + "description": "Query language value for Lithuanian (Lithuania)." + }, + { + "value": "uk-ua", + "name": "UkUa", + "description": "Query language value for Ukrainian (Ukraine)." + }, + { + "value": "lv-lv", + "name": "LvLv", + "description": "Query language value for Latvian (Latvia)." + }, + { + "value": "et-ee", + "name": "EtEe", + "description": "Query language value for Estonian (Estonia)." + }, + { + "value": "ca-es", + "name": "CaEs", + "description": "Query language value for Catalan." + }, + { + "value": "fi-fi", + "name": "FiFi", + "description": "Query language value for Finnish (Finland)." + }, + { + "value": "sr-ba", + "name": "SrBa", + "description": "Query language value for Serbian (Bosnia and Herzegovina)." + }, + { + "value": "sr-me", + "name": "SrMe", + "description": "Query language value for Serbian (Montenegro)." + }, + { + "value": "sr-rs", + "name": "SrRs", + "description": "Query language value for Serbian (Serbia)." + }, + { + "value": "sk-sk", + "name": "SkSk", + "description": "Query language value for Slovak (Slovakia)." + }, + { + "value": "nb-no", + "name": "NbNo", + "description": "Query language value for Norwegian (Norway)." + }, + { + "value": "hy-am", + "name": "HyAm", + "description": "Query language value for Armenian (Armenia)." + }, + { + "value": "bn-in", + "name": "BnIn", + "description": "Query language value for Bengali (India)." + }, + { + "value": "eu-es", + "name": "EuEs", + "description": "Query language value for Basque." + }, + { + "value": "gl-es", + "name": "GlEs", + "description": "Query language value for Galician." + }, + { + "value": "gu-in", + "name": "GuIn", + "description": "Query language value for Gujarati (India)." + }, + { + "value": "he-il", + "name": "HeIl", + "description": "Query language value for Hebrew (Israel)." + }, + { + "value": "ga-ie", + "name": "GaIe", + "description": "Query language value for Irish (Ireland)." + }, + { + "value": "kn-in", + "name": "KnIn", + "description": "Query language value for Kannada (India)." + }, + { + "value": "ml-in", + "name": "MlIn", + "description": "Query language value for Malayalam (India)." + }, + { + "value": "mr-in", + "name": "MrIn", + "description": "Query language value for Marathi (India)." + }, + { + "value": "fa-ae", + "name": "FaAe", + "description": "Query language value for Persian (U.A.E.)." + }, + { + "value": "pa-in", + "name": "PaIn", + "description": "Query language value for Punjabi (India)." + }, + { + "value": "te-in", + "name": "TeIn", + "description": "Query language value for Telugu (India)." + }, + { + "value": "ur-pk", + "name": "UrPk", + "description": "Query language value for Urdu (Pakistan)." + } + ] + }, + "description": "The language of the query." + }, "ScoringStatistics": { "type": "string", "enum": [ @@ -1667,6 +2444,10 @@ "type": "string", "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results." }, + "debug": { + "$ref": "#/definitions/QueryDebugMode", + "description": "Enables a debugging tool that can be used to further explore your reranked results." + }, "search": { "type": "string", "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", @@ -1680,6 +2461,14 @@ "$ref": "#/definitions/SearchMode", "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." }, + "queryLanguage": { + "$ref": "#/definitions/QueryLanguage", + "description": "A value that specifies the language of the search query." + }, + "speller": { + "$ref": "#/definitions/Speller", + "description": "A value that specified the type of the speller to use to spell-correct individual search query terms." + }, "select": { "type": "string", "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." @@ -1721,6 +2510,10 @@ "$ref": "#/definitions/Captions", "description": "A value that specifies whether captions should be returned as part of the search response." }, + "semanticFields": { + "type": "string", + "description": "The comma-separated list of field names used for semantic ranking." + }, "vectorQueries": { "type": "array", "items": { @@ -1731,6 +2524,10 @@ "vectorFilterMode": { "$ref": "#/definitions/VectorFilterMode", "description": "Determines whether or not filters are applied before or after the vector search is performed. Default is 'preFilter' for new indexes." + }, + "hybridSearch": { + "$ref": "#/definitions/HybridSearch", + "description": "The query parameters to configure hybrid search behaviors." } }, "description": "Parameters for filtering, sorting, faceting, paging, and other search query behaviors." @@ -2067,6 +2864,196 @@ ] }, "description": "This parameter is only valid if the query type is `semantic`. If set, the query returns captions extracted from key passages in the highest ranked documents. When Captions is set to `extractive`, highlighting is enabled by default, and can be configured by appending the pipe character `|` followed by the `highlight-` option, such as `extractive|highlight-true`. Defaults to `None`." + }, + "DocumentDebugInfo": { + "type": "object", + "properties": { + "semantic": { + "$ref": "#/definitions/SemanticDebugInfo", + "readOnly": true, + "description": "Contains debugging information specific to semantic ranking requests." + }, + "vectors": { + "$ref": "#/definitions/VectorsDebugInfo", + "readOnly": true, + "description": "Contains debugging information specific to vector and hybrid search." + } + }, + "description": "Contains debugging information that can be used to further explore your search results." + }, + "SemanticDebugInfo": { + "type": "object", + "properties": { + "titleField": { + "$ref": "#/definitions/QueryResultDocumentSemanticField", + "readOnly": true, + "description": "The title field that was sent to the semantic enrichment process, as well as how it was used" + }, + "contentFields": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryResultDocumentSemanticField" + }, + "readOnly": true, + "description": "The content fields that were sent to the semantic enrichment process, as well as how they were used" + }, + "keywordFields": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryResultDocumentSemanticField" + }, + "readOnly": true, + "description": "The keyword fields that were sent to the semantic enrichment process, as well as how they were used" + }, + "rerankerInput": { + "$ref": "#/definitions/QueryResultDocumentRerankerInput", + "readOnly": true, + "description": "The raw concatenated strings that were sent to the semantic enrichment process." + } + } + }, + "QueryResultDocumentSemanticField": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that was sent to the semantic enrichment process" + }, + "state": { + "$ref": "#/definitions/QueryResultDocumentSemanticFieldState", + "readOnly": true, + "description": "The way the field was used for the semantic enrichment process (fully used, partially used, or unused)" + } + }, + "description": "Description of fields that were sent to the semantic enrichment process, as well as how they were used" + }, + "QueryResultDocumentSemanticFieldState": { + "type": "string", + "enum": [ + "used", + "unused", + "partial" + ], + "x-ms-enum": { + "name": "SemanticFieldState", + "modelAsString": true, + "values": [ + { + "value": "used", + "name": "Used", + "description": "The field was fully used for semantic enrichment." + }, + { + "value": "unused", + "name": "Unused", + "description": "The field was not used for semantic enrichment." + }, + { + "value": "partial", + "name": "Partial", + "description": "The field was partially used for semantic enrichment." + } + ] + }, + "description": "The way the field was used for the semantic enrichment process." + }, + "QueryResultDocumentRerankerInput": { + "type": "object", + "properties": { + "title": { + "type": "string", + "readOnly": true, + "description": "The raw string for the title field that was used for semantic enrichment." + }, + "content": { + "type": "string", + "readOnly": true, + "description": "The raw concatenated strings for the content fields that were used for semantic enrichment." + }, + "keywords": { + "type": "string", + "readOnly": true, + "description": "The raw concatenated strings for the keyword fields that were used for semantic enrichment." + } + }, + "description": "The raw concatenated strings that were sent to the semantic enrichment process." + }, + "VectorsDebugInfo": { + "type": "object", + "properties": { + "subscores": { + "$ref": "#/definitions/QueryResultDocumentSubscores", + "readOnly": true, + "description": "The breakdown of subscores of the document prior to the chosen result set fusion/combination method such as RRF." + } + } + }, + "QueryResultDocumentSubscores": { + "type": "object", + "properties": { + "text": { + "$ref": "#/definitions/TextResult", + "readOnly": true, + "description": "The BM25 or Classic score for the text portion of the query." + }, + "vectors": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryResultDocumentVectorSubscores" + }, + "readOnly": true, + "description": "The vector similarity and @search.score values for each vector query." + }, + "documentBoost": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "The BM25 or Classic score for the text portion of the query." + } + }, + "description": "The breakdown of subscores between the text and vector query components of the search query for this document. Each vector query is shown as a separate object in the same order they were received." + }, + "TextResult": { + "type": "object", + "properties": { + "searchScore": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "The BM25 or Classic score for the text portion of the query." + } + }, + "readOnly": true, + "description": "The BM25 or Classic score for the text portion of the query." + }, + "QueryResultDocumentVectorSubscores": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SingleVectorFieldResult", + "readOnly": true + }, + "readOnly": true, + "description": "The vector similarity and @search.score values for each vector query. Each cross-field vector query will have separate subscores for each referenced field." + }, + "SingleVectorFieldResult": { + "type": "object", + "properties": { + "searchScore": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "The @search.score value that is calculated from the vector similarity score. This is the score that's visible in a pure single-field single-vector query." + }, + "vectorSimilarity": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "The vector similarity score for this document. Note this is the canonical definition of similarity metric, not the 'distance' version. For example, cosine similarity instead of cosine distance." + } + }, + "readOnly": true, + "description": "A single vector field result. Both @search.score and vector similarity values are returned. Vector similarity is related to @search.score by an equation." } }, "parameters": { diff --git a/swagger-specs/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json b/swagger-specs/search/data-plane/Azure.Search/preview/2024-09-01-preview/searchservice.json similarity index 90% rename from swagger-specs/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json rename to swagger-specs/search/data-plane/Azure.Search/preview/2024-09-01-preview/searchservice.json index c1281bce0..33427cf99 100644 --- a/swagger-specs/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json +++ b/swagger-specs/search/data-plane/Azure.Search/preview/2024-09-01-preview/searchservice.json @@ -3,7 +3,7 @@ "info": { "title": "SearchServiceClient", "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", - "version": "2024-07-01", + "version": "2024-09-01-preview", "x-ms-code-generation-settings": { "useDateTimeOffset": true } @@ -70,6 +70,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/IgnoreResetRequirementsParameter" } ], "x-ms-request-id": "request-id", @@ -329,6 +332,83 @@ } } }, + "/indexers('{indexerName}')/search.resetdocs": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_ResetDocs", + "x-ms-examples": { + "SearchServiceResetDocs": { + "$ref": "./examples/SearchServiceResetDocs.json" + } + }, + "description": "Resets specific documents in the datasource to be selectively re-ingested by the indexer.", + "externalDocs": { + "url": "https://aka.ms/reset-documents" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to reset documents for." + }, + { + "name": "keysOrIds", + "in": "body", + "required": false, + "schema": { + "type": "object", + "x-ms-client-name": "DocumentKeysOrIds", + "properties": { + "documentKeys": { + "type": "array", + "items": { + "type": "string" + }, + "description": "document keys to be reset" + }, + "datasourceDocumentIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "datasource document identifiers to be reset" + } + } + } + }, + { + "name": "overwrite", + "in": "query", + "required": false, + "default": false, + "type": "boolean", + "description": "If false, keys or ids will be appended to existing ones. If true, only the keys or ids in this payload will be queued to be re-ingested." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, "/indexers('{indexerName}')/search.run": { "post": { "tags": [ @@ -419,6 +499,12 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/IgnoreResetRequirementsParameter" + }, + { + "$ref": "#/parameters/DisableCacheReprocessingChangeDetectionParameter" } ], "x-ms-request-id": "request-id", @@ -727,6 +813,12 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/IgnoreResetRequirementsParameter" + }, + { + "$ref": "#/parameters/DisableCacheReprocessingChangeDetectionParameter" } ], "x-ms-request-id": "request-id", @@ -942,6 +1034,69 @@ } } }, + "/skillsets('{skillsetName}')/search.resetskills": { + "post": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_ResetSkills", + "x-ms-examples": { + "SearchServiceResetSkills": { + "$ref": "./examples/SearchServiceResetSkills.json" + } + }, + "description": "Reset an existing skillset in a search service.", + "externalDocs": { + "url": "https://aka.ms/reset-skills" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to reset." + }, + { + "name": "skillNames", + "in": "body", + "required": true, + "schema": { + "type": "object", + "x-ms-client-name": "SkillNames", + "properties": { + "skillNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "the names of skills to be reset." + } + } + }, + "description": "The names of skills to reset." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "The skills in the skillset are successfully reset." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, "/synonymmaps('{synonymMapName}')": { "put": { "tags": [ @@ -1577,6 +1732,263 @@ } } }, + "/aliases": { + "post": { + "tags": [ + "Aliases" + ], + "operationId": "Aliases_Create", + "x-ms-examples": { + "SearchServiceCreateAlias": { + "$ref": "./examples/SearchServiceCreateAlias.json" + } + }, + "description": "Creates a new search alias.", + "externalDocs": { + "url": "https://learn.microsoft.com/rest/api/searchservice/Create-Alias" + }, + "parameters": [ + { + "name": "alias", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchAlias" + }, + "description": "The definition of the alias to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SearchAlias" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Aliases" + ], + "operationId": "Aliases_List", + "x-ms-examples": { + "SearchServiceListAliases": { + "$ref": "./examples/SearchServiceListAliases.json" + } + }, + "description": "Lists all aliases available for a search service.", + "externalDocs": { + "url": "https://learn.microsoft.com/rest/api/searchservice/List-Aliases" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListAliasesResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/aliases('{aliasName}')": { + "put": { + "tags": [ + "Aliases" + ], + "operationId": "Aliases_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateAlias": { + "$ref": "./examples/SearchServiceCreateOrUpdateAlias.json" + } + }, + "description": "Creates a new search alias or updates an alias if it already exists.", + "externalDocs": { + "url": "https://learn.microsoft.com/rest/api/searchservice/Update-Alias" + }, + "parameters": [ + { + "name": "aliasName", + "in": "path", + "required": true, + "type": "string", + "description": "The definition of the alias to create or update." + }, + { + "name": "alias", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchAlias" + }, + "description": "The definition of the alias to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SearchAlias" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SearchAlias" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Aliases" + ], + "operationId": "Aliases_Delete", + "x-ms-examples": { + "SearchServiceDeleteAlias": { + "$ref": "./examples/SearchServiceDeleteAlias.json" + } + }, + "description": "Deletes a search alias and its associated mapping to an index. This operation is permanent, with no recovery option. The mapped index is untouched by this operation.", + "externalDocs": { + "url": "https://learn.microsoft.com/rest/api/searchservice/Delete-Alias" + }, + "parameters": [ + { + "name": "aliasName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alias to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Aliases" + ], + "operationId": "Aliases_Get", + "x-ms-examples": { + "SearchServiceGetAlias": { + "$ref": "./examples/SearchServiceGetAlias.json" + } + }, + "description": "Retrieves an alias definition.", + "externalDocs": { + "url": "https://learn.microsoft.com/rest/api/searchservice/Get-Alias" + }, + "parameters": [ + { + "name": "aliasName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the alias to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SearchAlias" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/data-plane/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, "/servicestats": { "get": { "tags": [ @@ -1630,6 +2042,10 @@ "$ref": "#/definitions/LexicalTokenizerName", "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." }, + "normalizer": { + "$ref": "#/definitions/LexicalNormalizerName", + "description": "The name of the normalizer to use to normalize the given text." + }, "tokenFilters": { "type": "array", "items": { @@ -2589,6 +3005,51 @@ "url": "https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } }, + "LexicalNormalizerName": { + "type": "string", + "enum": [ + "asciifolding", + "elision", + "lowercase", + "standard", + "uppercase" + ], + "x-ms-enum": { + "name": "LexicalNormalizerName", + "modelAsString": true, + "values": [ + { + "value": "asciifolding", + "name": "AsciiFolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "value": "elision", + "name": "Elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Normalizes token text to lowercase. See https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" + }, + { + "value": "standard", + "name": "Standard", + "description": "Standard normalizer, which consists of lowercase and asciifolding. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "value": "uppercase", + "name": "Uppercase", + "description": "Normalizes token text to uppercase. See https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + } + ] + }, + "description": "Defines the names of all text normalizers supported by the search engine.", + "externalDocs": { + "url": "https://aka.ms/azs-normalizers" + } + }, "CharFilterName": { "type": "string", "enum": [ @@ -2921,6 +3382,59 @@ "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" } }, + "LexicalNormalizer": { + "type": "object", + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of normalizer." + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://aka.ms/azs-normalizers" + }, + "description": "The name of the normalizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters. It cannot end in '.microsoft' nor '.lucene', nor be named 'asciifolding', 'standard', 'lowercase', 'uppercase', or 'elision'." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Base type for normalizers." + }, + "CustomNormalizer": { + "type": "object", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomNormalizer", + "allOf": [ + { + "$ref": "#/definitions/LexicalNormalizer" + } + ], + "properties": { + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "A list of token filters used to filter out or modify the input token. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "A list of character filters used to prepare input text before it is processed. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed." + } + }, + "description": "Allows you to configure normalization for filterable, sortable, and facetable fields, which by default operate with strict matching. This is a user-defined configuration consisting of at least one or more filters, which modify the token that is stored.", + "externalDocs": { + "url": "https://aka.ms/azs-custom-normalizers" + } + }, "LexicalTokenizer": { "discriminator": "@odata.type", "properties": { @@ -5844,6 +6358,12 @@ "format": "double", "description": "Default oversampling factor. Oversampling will internally request more documents (specified by this multiplier) in the initial search. This increases the set of results that will be reranked using recomputed similarity scores from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). This parameter can only be set when rerankWithOriginalVectors is true. Higher values improve recall at the expense of latency.", "x-nullable": true + }, + "truncationDimension": { + "type": "integer", + "format": "int32", + "description": "The number of dimensions to truncate the vectors to. Truncating the vectors reduces the size of the vectors and the amount of data that needs to be transferred during search. This can save storage cost and improve search performance at the expense of recall. It should be only used for embeddings trained with Matryoshka Representation Learning (MRL) such as OpenAI text-embedding-3-large (small). The default value is null, which means no truncation.", + "x-nullable": true } }, "required": [ @@ -5939,7 +6459,7 @@ "properties": { "name": { "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + "url": "https://learn.microsoft.com/rest/api/searchservice/Naming-rules" }, "type": "string", "description": "The name to associate with this particular vectorization method.", @@ -6080,13 +6600,162 @@ "description": "The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared." } }, - "description": "Specifies the properties for connecting to a user-defined vectorizer." + "description": "Specifies the properties for connecting to a user-defined vectorizer." + }, + "AIServicesVisionVectorizer": { + "type": "object", + "x-ms-discriminator-value": "aiServicesVision", + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "properties": { + "aiServicesVisionParameters": { + "x-ms-client-name": "AIServicesVisionParameters", + "$ref": "#/definitions/AIServicesVisionParameters", + "description": "Contains the parameters specific to AI Services Vision embedding vectorization." + } + }, + "description": "Specifies the AI Services Vision parameters for vectorizing a query image or text." + }, + "AIServicesVisionParameters": { + "type": "object", + "properties": { + "modelVersion": { + "type": "string", + "x-nullable": true, + "description": "The version of the model to use when calling the AI Services Vision service. It will default to the latest available when not specified." + }, + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the AI Services resource." + }, + "apiKey": { + "type": "string", + "description": "API key of the designated AI Services resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "x-nullable": true, + "description": "The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the index, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared." + } + }, + "description": "Specifies the AI Services Vision parameters for vectorizing a query image or text.", + "required": [ + "resourceUri", + "modelVersion" + ] + }, + "AMLVectorizer": { + "type": "object", + "x-ms-discriminator-value": "aml", + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "properties": { + "amlParameters": { + "x-ms-client-name": "AMLParameters", + "$ref": "#/definitions/AMLParameters", + "description": "Specifies the properties of the AML vectorizer." + } + }, + "description": "Specifies an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog for generating the vector embedding of a query string." + }, + "AMLParameters": { + "type": "object", + "properties": { + "uri": { + "x-ms-client-name": "ScoringUri", + "type": "string", + "format": "uri", + "x-nullable": true, + "description": "(Required for no authentication or key authentication) The scoring URI of the AML service to which the JSON payload will be sent. Only the https URI scheme is allowed." + }, + "key": { + "x-ms-client-name": "AuthenticationKey", + "type": "string", + "x-nullable": true, + "description": "(Required for key authentication) The key for the AML service." + }, + "resourceId": { + "type": "string", + "x-nullable": true, + "description": "(Required for token authentication). The Azure Resource Manager resource ID of the AML service. It should be in the format subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/services/{service_name}." + }, + "timeout": { + "type": "string", + "format": "duration", + "x-nullable": true, + "description": "(Optional) When specified, indicates the timeout for the http client making the API call." + }, + "region": { + "type": "string", + "x-nullable": true, + "description": "(Optional for token authentication). The region the AML service is deployed in." + }, + "modelName": { + "$ref": "#/definitions/AIStudioModelCatalogName", + "description": "The name of the embedding model from the Azure AI Studio Catalog that is deployed at the provided endpoint." + } + }, + "required": [ + "uri" + ], + "description": "Specifies the properties for connecting to an AML vectorizer." + }, + "AIStudioModelCatalogName": { + "type": "string", + "enum": [ + "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32", + "OpenAI-CLIP-Image-Text-Embeddings-ViT-Large-Patch14-336", + "Facebook-DinoV2-Image-Embeddings-ViT-Base", + "Facebook-DinoV2-Image-Embeddings-ViT-Giant", + "Cohere-embed-v3-english", + "Cohere-embed-v3-multilingual" + ], + "x-ms-enum": { + "name": "AIStudioModelCatalogName", + "modelAsString": true, + "values": [ + { + "value": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32", + "name": "OpenAI_CLIP_Image_Text_Embeddings_vit_base_patch32" + }, + { + "value": "OpenAI-CLIP-Image-Text-Embeddings-ViT-Large-Patch14-336", + "name": "OpenAI_CLIP_Image_Text_Embeddings_ViT_Large_Patch14_336" + }, + { + "value": "Facebook-DinoV2-Image-Embeddings-ViT-Base", + "name": "Facebook_DinoV2_Image_Embeddings_ViT_Base" + }, + { + "value": "Facebook-DinoV2-Image-Embeddings-ViT-Giant", + "name": "Facebook_DinoV2_Image_Embeddings_ViT_Giant" + }, + { + "value": "Cohere-embed-v3-english", + "name": "Cohere_embed_v3_english" + }, + { + "value": "Cohere-embed-v3-multilingual", + "name": "Cohere_embed_v3_multilingual" + } + ] + }, + "description": "The name of the embedding model from the Azure AI Studio Catalog that will be called." }, "VectorSearchVectorizerKind": { "type": "string", "enum": [ "azureOpenAI", - "customWebApi" + "customWebApi", + "aiServicesVision", + "aml" ], "x-ms-enum": { "name": "VectorSearchVectorizerKind", @@ -6101,6 +6770,16 @@ "value": "customWebApi", "name": "CustomWebApi", "description": "Generate embeddings using a custom web endpoint at query time." + }, + { + "value": "aiServicesVision", + "name": "AIServicesVision", + "description": "Generate embeddings for an image or text input at query time using the Azure AI Services Vision Vectorize API." + }, + { + "value": "aml", + "name": "AML", + "description": "Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog at query time." } ] }, @@ -6246,6 +6925,15 @@ } } }, + "NativeBlobSoftDeleteDeletionDetectionPolicy": { + "description": "Defines a data deletion detection policy utilizing Azure Blob Storage's native soft delete feature for deletion detection.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ] + }, "SearchIndexerDataSourceType": { "type": "string", "enum": [ @@ -6254,7 +6942,8 @@ "azureblob", "azuretable", "mysql", - "adlsgen2" + "adlsgen2", + "onelake" ], "x-ms-enum": { "name": "SearchIndexerDataSourceType", @@ -6289,6 +6978,11 @@ "value": "adlsgen2", "name": "AdlsGen2", "description": "Indicates an ADLS Gen2 datasource." + }, + { + "value": "onelake", + "name": "OneLake", + "description": "Indicates a Microsoft Fabric OneLake datasource." } ] }, @@ -6319,6 +7013,11 @@ "$ref": "#/definitions/SearchIndexerDataContainer", "description": "The data container for the datasource." }, + "identity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "x-nullable": true, + "description": "An explicit managed identity to use for this datasource. If not specified and the connection string is a managed identity, the system-assigned managed identity is used. If not specified, the value remains unchanged. If \"none\" is specified, the value of this property is cleared." + }, "dataChangeDetectionPolicy": { "$ref": "#/definitions/DataChangeDetectionPolicy", "x-nullable": true, @@ -6774,6 +7473,14 @@ "url": "https://aka.ms/azure-search-encryption-with-cmk" }, "x-nullable": true + }, + "cache": { + "$ref": "#/definitions/SearchIndexerCache", + "x-nullable": true, + "description": "Adds caching to an enrichment pipeline to allow for incremental modification steps without having to rebuild the index every time.", + "externalDocs": { + "url": "https://learn.microsoft.com/azure/search/search-howto-incremental-index" + } } }, "required": [ @@ -6884,6 +7591,16 @@ "readOnly": true, "description": "The outcome of this indexer execution." }, + "statusDetail": { + "$ref": "#/definitions/IndexerExecutionStatusDetail", + "readOnly": true, + "description": "The outcome of this indexer execution." + }, + "currentState": { + "$ref": "#/definitions/IndexerCurrentState", + "readOnly": true, + "description": "All of the state that defines and dictates the indexer's current execution." + }, "errorMessage": { "type": "string", "readOnly": true, @@ -7055,6 +7772,96 @@ "x-nullable": false, "description": "Represents the overall indexer status." }, + "IndexerExecutionStatusDetail": { + "type": "string", + "enum": [ + "resetDocs" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatusDetail", + "modelAsString": true, + "values": [ + { + "value": "resetDocs", + "name": "ResetDocs", + "description": "Indicates that the reset that occurred was for a call to ResetDocs." + } + ] + }, + "description": "Details the status of an individual indexer execution." + }, + "IndexerCurrentState": { + "type": "object", + "properties": { + "mode": { + "$ref": "#/definitions/IndexingMode", + "readOnly": true, + "description": "The mode the indexer is running in." + }, + "allDocsInitialChangeTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state used when indexing starts on all documents in the datasource." + }, + "allDocsFinalChangeTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state value when indexing finishes on all documents in the datasource." + }, + "resetDocsInitialChangeTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state used when indexing starts on select, reset documents in the datasource." + }, + "resetDocsFinalChangeTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state value when indexing finishes on select, reset documents in the datasource." + }, + "resetDocumentKeys": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of document keys that have been reset. The document key is the document's unique identifier for the data in the search index. The indexer will prioritize selectively re-ingesting these keys." + }, + "resetDatasourceDocumentIds": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of datasource document ids that have been reset. The datasource document id is the unique identifier for the data in the datasource. The indexer will prioritize selectively re-ingesting these ids." + } + }, + "description": "Represents all of the state that defines and dictates the indexer's current execution." + }, + "IndexingMode": { + "type": "string", + "enum": [ + "indexingAllDocs", + "indexingResetDocs" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true, + "values": [ + { + "value": "indexingAllDocs", + "name": "IndexingAllDocs", + "description": "The indexer is indexing all documents in the datasource." + }, + { + "value": "indexingResetDocs", + "name": "indexingResetDocs", + "description": "The indexer is indexing selective, reset documents in the datasource. The documents being indexed are defined on indexer status." + } + ] + }, + "x-nullable": false, + "description": "Represents the mode the indexer is executing in." + }, "SearchIndexerLimits": { "properties": { "maxRunTime": { @@ -7145,6 +7952,14 @@ "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields.", "x-nullable": true }, + "normalizer": { + "externalDocs": { + "url": "https://aka.ms/azs-normalizers" + }, + "$ref": "#/definitions/LexicalNormalizerName", + "description": "The name of the normalizer to use for the field. This option can be used only with fields with filterable, sortable, or facetable enabled. Once the normalizer is chosen, it cannot be changed for the field. Must be null for complex fields.", + "x-nullable": true + }, "dimensions": { "x-ms-client-name": "vectorSearchDimensions", "type": "integer", @@ -7651,6 +8466,16 @@ "url": "https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } }, + "normalizers": { + "type": "array", + "items": { + "$ref": "#/definitions/LexicalNormalizer" + }, + "description": "The normalizers for the index.", + "externalDocs": { + "url": "https://aka.ms/azs-custom-normalizers" + } + }, "encryptionKey": { "$ref": "#/definitions/SearchResourceEncryptionKey", "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data. Once you have encrypted your data, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", @@ -7693,6 +8518,35 @@ ], "description": "Represents a search index definition, which describes the fields and search behavior of an index." }, + "SearchAlias": { + "type": "object", + "properties": { + "name": { + "externalDocs": { + "url": "https://learn.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the alias." + }, + "indexes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The name of the index this alias maps to. Only one index name may be specified." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the alias." + } + }, + "required": [ + "name", + "indexes" + ], + "description": "Represents an index alias, which describes a mapping from the alias name to an index. The alias name can be used in place of the index name for supported operations." + }, "GetIndexStatisticsResult": { "properties": { "documentCount": { @@ -7740,6 +8594,24 @@ ], "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." }, + "ListAliasesResult": { + "type": "object", + "properties": { + "value": { + "x-ms-client-name": "Aliases", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchAlias" + }, + "description": "The aliases in the Search service." + } + }, + "required": [ + "value" + ], + "description": "Response from a List Aliases request. If successful, it includes the associated index mappings for all aliases." + }, "SearchIndexerSkillset": { "properties": { "name": { @@ -7823,6 +8695,14 @@ "x-nullable": false }, "description": "A list of additional projections to perform during indexing." + }, + "identity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "x-nullable": true, + "description": "The user-assigned managed identity used for connections to Azure Storage when writing knowledge store projections. If the connection string indicates an identity (ResourceId) and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared." + }, + "parameters": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreParameters" } }, "required": [ @@ -8667,6 +9547,16 @@ "format": "int32", "x-nullable": true, "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the SplitSkill will discontinue splitting after processing the first 'maximumPagesToTake' pages, in order to improve performance when only a few initial pages are needed from each document." + }, + "unit": { + "$ref": "#/definitions/SplitSkillUnit", + "x-nullable": true, + "description": "Only applies if textSplitMode is set to pages. There are two possible values. The choice of the values will decide the length (maximumPageLength and pageOverlapLength) measurement. The default is 'characters', which means the length will be measured by character." + }, + "azureOpenAITokenizerParameters": { + "$ref": "#/definitions/AzureOpenAITokenizerParameters", + "x-nullable": true, + "description": "Only applies if the unit is set to azureOpenAITokens. If specified, the splitSkill will use these parameters when performing the tokenization. The parameters are a valid 'encoderModelName' and an optional 'allowedSpecialTokens' property." } }, "externalDocs": { @@ -8846,6 +9736,57 @@ }, "description": "A dictionary of http request headers." }, + "AmlSkill": { + "type": "object", + "x-ms-client-name": "AzureMachineLearningSkill", + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.AmlSkill", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "properties": { + "uri": { + "x-ms-client-name": "ScoringUri", + "type": "string", + "format": "uri", + "x-nullable": true, + "description": "(Required for no authentication or key authentication) The scoring URI of the AML service to which the JSON payload will be sent. Only the https URI scheme is allowed." + }, + "key": { + "x-ms-client-name": "AuthenticationKey", + "type": "string", + "x-nullable": true, + "description": "(Required for key authentication) The key for the AML service." + }, + "resourceId": { + "type": "string", + "x-nullable": true, + "description": "(Required for token authentication). The Azure Resource Manager resource ID of the AML service. It should be in the format subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/services/{service_name}." + }, + "timeout": { + "type": "string", + "format": "duration", + "x-nullable": true, + "description": "(Optional) When specified, indicates the timeout for the http client making the API call." + }, + "region": { + "type": "string", + "x-nullable": true, + "description": "(Optional for token authentication). The region the AML service is deployed in." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "(Optional) When specified, indicates the number of calls the indexer will make in parallel to the endpoint you have provided. You can decrease this value if your endpoint is failing under too high of a request load, or raise it if your endpoint is able to accept more requests and you would like an increase in the performance of the indexer. If not set, a default value of 5 is used. The degreeOfParallelism can be set to a maximum of 10 and a minimum of 1." + } + }, + "externalDocs": { + "url": "https://learn.microsoft.com/en-us/azure/search/cognitive-search-aml-skill" + }, + "description": "The AML skill allows you to extend AI enrichment with a custom Azure Machine Learning (AML) model. Once an AML model is trained and deployed, an AML skill integrates it into AI enrichment." + }, "AzureOpenAIEmbeddingSkill": { "x-ms-client-name": "AzureOpenAIEmbeddingSkill", "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill", @@ -8868,6 +9809,27 @@ "type": "object", "description": "Allows you to generate a vector embedding for a given text input using the Azure OpenAI resource." }, + "VisionVectorizeSkill": { + "x-ms-client-name": "VisionVectorizeSkill", + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.VectorizeSkill", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "type": "object", + "properties": { + "modelVersion": { + "type": "string", + "x-nullable": true, + "description": "The version of the model to use when calling the AI Services Vision service. It will default to the latest available when not specified." + } + }, + "required": [ + "modelVersion" + ], + "description": "Allows you to generate a vector embedding for a given image or text input using the Azure AI Services Vision Vectorize API." + }, "ListSkillsetsResult": { "properties": { "value": { @@ -8909,6 +9871,83 @@ }, "description": "A value indicating which split mode to perform." }, + "SplitSkillUnit": { + "type": "string", + "enum": [ + "characters", + "azureOpenAITokens" + ], + "x-ms-enum": { + "name": "SplitSkillUnit", + "modelAsString": true, + "values": [ + { + "value": "characters", + "name": "Characters", + "description": "The length will be measured by character." + }, + { + "value": "azureOpenAITokens", + "name": "AzureOpenAITokens", + "description": "The length will be measured by an AzureOpenAI tokenizer from the tiktoken library." + } + ] + }, + "description": "A value indicating which unit to use." + }, + "AzureOpenAITokenizerParameters": { + "type": "object", + "properties": { + "encoderModelName": { + "$ref": "#/definitions/EncoderModelName", + "x-nullable": true, + "description": "Only applies if the unit is set to azureOpenAITokens. Options include 'R50k_base', 'P50k_base', 'P50k_edit' and 'CL100k_base'. The default value is 'CL100k_base'." + }, + "allowedSpecialTokens": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(Optional) Only applies if the unit is set to azureOpenAITokens. This parameter defines a collection of special tokens that are permitted within the tokenization process." + } + } + }, + "EncoderModelName": { + "type": "string", + "enum": [ + "r50k_base", + "p50k_base", + "p50k_edit", + "cl100k_base" + ], + "x-ms-enum": { + "name": "SplitSkillEncoderModelName", + "modelAsString": true, + "values": [ + { + "value": "r50k_base", + "name": "R50kBase", + "description": "Refers to a base model trained with a 50,000 token vocabulary, often used in general natural language processing tasks." + }, + { + "value": "p50k_base", + "name": "P50kBase", + "description": "A base model with a 50,000 token vocabulary, optimized for prompt-based tasks." + }, + { + "value": "p50k_edit", + "name": "P50kEdit", + "description": "Similar to p50k_base but fine-tuned for editing or rephrasing tasks with a 50,000 token vocabulary." + }, + { + "value": "cl100k_base", + "name": "CL100kBase", + "description": "A base model with a 100,000 token vocabulary." + } + ] + }, + "description": "A value indicating which tokenizer to use." + }, "VisualFeature": { "type": "string", "enum": [ @@ -11244,6 +12283,11 @@ "externalDocs": { "url": "https://aka.ms/azure-search-msi" } + }, + "identity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "x-nullable": true, + "description": "An explicit managed identity to use for this encryption key. If not specified and the access credentials property is null, the system-assigned managed identity is used. On update to the resource, if the explicit identity is unspecified, it remains unchanged. If \"none\" is specified, the value of this property is cleared." } }, "required": [ @@ -11253,6 +12297,25 @@ ], "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest, such as indexes and synonym maps." }, + "SearchIndexerCache": { + "type": "object", + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account where the cache data will be persisted." + }, + "enableReprocessing": { + "type": "boolean", + "x-nullable": true, + "description": "Specifies whether incremental reprocessing is enabled." + }, + "identity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "x-nullable": true, + "description": "The user-assigned managed identity used for connections to the enrichment cache. If the connection string indicates an identity (ResourceId) and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared." + } + } + }, "AzureActiveDirectoryApplicationCredentials": { "properties": { "applicationId": { @@ -11288,6 +12351,11 @@ }, "ServiceCounters": { "properties": { + "aliasesCount": { + "x-ms-client-name": "aliasCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of aliases." + }, "documentCount": { "x-ms-client-name": "documentCounter", "$ref": "#/definitions/ResourceCounter", @@ -11330,6 +12398,7 @@ } }, "required": [ + "aliasesCount", "documentCount", "indexesCount", "indexersCount", @@ -11542,6 +12611,23 @@ "x-ms-skip-url-encoding": true, "description": "The endpoint URL of the search service.", "x-ms-parameter-location": "client" + }, + "DisableCacheReprocessingChangeDetectionParameter": { + "name": "disableCacheReprocessingChangeDetection", + "in": "query", + "required": false, + "type": "boolean", + "description": "Disables cache reprocessing change detection.", + "x-ms-parameter-location": "method" + }, + "IgnoreResetRequirementsParameter": { + "name": "ignoreResetRequirements", + "x-ms-client-name": "skipIndexerResetRequirementForCache", + "in": "query", + "required": false, + "type": "boolean", + "description": "Ignores cache reset requirements.", + "x-ms-parameter-location": "method" } } } diff --git a/swagger-specs/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json b/swagger-specs/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json deleted file mode 100644 index b094625ea..000000000 --- a/swagger-specs/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json +++ /dev/null @@ -1,412 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Microsoft Defender for Cloud", - "description": "API spec for Microsoft.Security (Microsoft Defender for Cloud) resource provider", - "version": "2015-06-01-preview" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings": { - "get": { - "x-ms-examples": { - "List Adaptive Network Hardenings resources of an extended resource": { - "$ref": "./examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json" - } - }, - "description": "Gets a list of Adaptive Network Hardenings resources in scope of an extended resource.", - "tags": [ - "AdaptiveNetworkHardenings" - ], - "operationId": "AdaptiveNetworkHardenings_ListByExtendedResource", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "name": "resourceNamespace", - "in": "path", - "description": "The Namespace of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "The type of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Name of the resource.", - "required": true, - "type": "string" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveNetworkHardeningsList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}": { - "get": { - "x-ms-examples": { - "Get a single Adaptive Network Hardening resource": { - "$ref": "./examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json" - } - }, - "tags": [ - "AdaptiveNetworkHardenings" - ], - "description": "Gets a single Adaptive Network Hardening resource", - "operationId": "AdaptiveNetworkHardenings_Get", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "name": "resourceNamespace", - "in": "path", - "description": "The Namespace of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "The type of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Name of the resource.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveNetworkHardening" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}/{adaptiveNetworkHardeningEnforceAction}": { - "post": { - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Enforces the given rules on the NSG(s) listed in the request": { - "$ref": "./examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json" - } - }, - "tags": [ - "AdaptiveNetworkHardenings" - ], - "description": "Enforces the given rules on the NSG(s) listed in the request", - "operationId": "AdaptiveNetworkHardenings_Enforce", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "name": "resourceNamespace", - "in": "path", - "description": "The Namespace of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "The type of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Name of the resource.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceAction" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceRequest" - } - ], - "responses": { - "200": { - "description": "OK." - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "PortNumber": { - "type": "integer", - "minimum": 0, - "maximum": 65535 - }, - "Rule": { - "description": "Describes remote addresses that is recommended to communicate with the Azure resource on some (Protocol, Port, Direction). All other remote addresses are recommended to be blocked", - "properties": { - "name": { - "description": "The name of the rule", - "type": "string" - }, - "direction": { - "description": "The rule's direction", - "type": "string", - "enum": [ - "Inbound", - "Outbound" - ], - "x-ms-enum": { - "name": "direction", - "modelAsString": true - } - }, - "destinationPort": { - "description": "The rule's destination port", - "$ref": "#/definitions/PortNumber" - }, - "protocols": { - "description": "The rule's transport protocols", - "type": "array", - "items": { - "type": "string", - "enum": [ - "TCP", - "UDP" - ], - "x-ms-enum": { - "name": "transportProtocol", - "modelAsString": true - } - } - }, - "ipAddresses": { - "description": "The remote IP addresses that should be able to communicate with the Azure resource on the rule's destination port and protocol", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "EffectiveNetworkSecurityGroups": { - "description": "Describes the Network Security Groups effective on a network interface", - "properties": { - "networkInterface": { - "description": "The Azure resource ID of the network interface", - "type": "string" - }, - "networkSecurityGroups": { - "description": "The Network Security Groups effective on the network interface", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "AdaptiveNetworkHardeningProperties": { - "description": "Adaptive Network Hardening resource properties", - "properties": { - "rules": { - "description": "The security rules which are recommended to be effective on the VM", - "type": "array", - "items": { - "$ref": "#/definitions/Rule" - } - }, - "rulesCalculationTime": { - "type": "string", - "format": "date-time", - "description": "The UTC time on which the rules were calculated" - }, - "effectiveNetworkSecurityGroups": { - "description": "The Network Security Groups effective on the network interfaces of the protected resource", - "type": "array", - "items": { - "$ref": "#/definitions/EffectiveNetworkSecurityGroups" - } - } - } - }, - "AdaptiveNetworkHardening": { - "description": "The resource whose properties describes the Adaptive Network Hardening settings for some Azure resource", - "properties": { - "properties": { - "description": "Properties of the Adaptive Network Hardening resource", - "x-ms-client-flatten": true, - "$ref": "#/definitions/AdaptiveNetworkHardeningProperties" - } - }, - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/Resource" - } - ] - }, - "AdaptiveNetworkHardeningsList": { - "description": "Response for ListAdaptiveNetworkHardenings API service call", - "properties": { - "value": { - "description": "A list of Adaptive Network Hardenings resources", - "type": "array", - "items": { - "$ref": "#/definitions/AdaptiveNetworkHardening" - } - }, - "nextLink": { - "description": "The URL to get the next set of results", - "type": "string" - } - } - }, - "AdaptiveNetworkHardeningEnforceRequest": { - "type": "object", - "properties": { - "rules": { - "type": "array", - "description": "The rules to enforce", - "items": { - "$ref": "#/definitions/Rule" - } - }, - "networkSecurityGroups": { - "type": "array", - "description": "The Azure resource IDs of the effective network security groups that will be updated with the created security rules from the Adaptive Network Hardening rules", - "items": { - "type": "string" - } - } - }, - "required": [ - "rules", - "networkSecurityGroups" - ] - } - }, - "parameters": { - "AdaptiveNetworkHardeningResourceName": { - "name": "adaptiveNetworkHardeningResourceName", - "in": "path", - "description": "The name of the Adaptive Network Hardening resource.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AdaptiveNetworkHardeningEnforceAction": { - "name": "adaptiveNetworkHardeningEnforceAction", - "type": "string", - "in": "path", - "required": true, - "description": "Enforces the given rules on the NSG(s) listed in the request", - "enum": [ - "enforce" - ], - "x-ms-parameter-location": "method" - }, - "AdaptiveNetworkHardeningEnforceRequest": { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AdaptiveNetworkHardeningEnforceRequest" - }, - "x-ms-parameter-location": "method" - } - } -} diff --git a/swagger-specs/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json b/swagger-specs/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json deleted file mode 100644 index 3d9fb3fcf..000000000 --- a/swagger-specs/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json +++ /dev/null @@ -1,606 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Microsoft Defender for Cloud", - "description": "API spec for Microsoft.Security (Microsoft Defender for Cloud) resource provider", - "version": "2015-06-01-preview" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applicationWhitelistings": { - "get": { - "description": "Gets a list of application control VM/server groups for the subscription.", - "operationId": "AdaptiveApplicationControls_List", - "x-ms-examples": { - "Gets a list of application control VM/server groups for the subscription": { - "$ref": "./examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json" - } - }, - "tags": [ - "applicationWhitelistings" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/IncludePathRecommendations" - }, - { - "$ref": "#/parameters/Summary" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AppWhitelistingGroups" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}": { - "get": { - "description": "Gets an application control VM/server group.", - "operationId": "AdaptiveApplicationControls_Get", - "x-ms-examples": { - "Gets a configured application control VM/server group": { - "$ref": "./examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json" - } - }, - "tags": [ - "applicationWhitelistings" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/AscLocation" - }, - { - "$ref": "#/parameters/GroupName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AppWhitelistingGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "applicationWhitelistings" - ], - "x-ms-examples": { - "Update an application control VM/server group by adding a new file": { - "$ref": "./examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json" - } - }, - "description": "Update an application control VM/server group", - "operationId": "AdaptiveApplicationControls_Put", - "consumes": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/AscLocation" - }, - { - "$ref": "#/parameters/GroupName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/AppWhitelistingGroupDataPutDataBody" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AppWhitelistingGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - }, - "delete": { - "x-ms-examples": { - "Delete an application control VM/server group": { - "$ref": "./examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json" - } - }, - "tags": [ - "applicationWhitelistings" - ], - "description": "Delete an application control VM/server group", - "operationId": "AdaptiveApplicationControls_Delete", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/AscLocation" - }, - { - "$ref": "#/parameters/GroupName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK - The response indicates that the delete operation completed successfully" - }, - "202": { - "description": "Accepted. The response indicates the delete operation is performed in the background." - }, - "204": { - "description": "No Content. The response indicates the resource is already deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "AppWhitelistingGroups": { - "type": "object", - "description": "Represents a list of VM/server groups and set of rules that are Recommended by Microsoft Defender for Cloud to be allowed", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/AppWhitelistingGroup" - } - } - } - }, - "AppWhitelistingGroup": { - "type": "object", - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/AppWhitelistingGroupData" - } - }, - "required": [ - "properties" - ], - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/Resource" - }, - { - "$ref": "../../../common/v1/types.json#/definitions/Location" - } - ] - }, - "AppWhitelistingGroupData": { - "type": "object", - "description": "Represents a VM/server group and set of rules that are Recommended by Microsoft Defender for Cloud to be allowed", - "properties": { - "enforcementMode": { - "$ref": "#/definitions/EnforcementMode" - }, - "protectionMode": { - "$ref": "#/definitions/ProtectionMode" - }, - "configurationStatus": { - "$ref": "#/definitions/ConfigurationStatus" - }, - "recommendationStatus": { - "$ref": "#/definitions/RecommendationStatus" - }, - "issues": { - "$ref": "#/definitions/AppWhitelistingIssuesSummaries" - }, - "sourceSystem": { - "$ref": "#/definitions/SourceSystem" - }, - "vmRecommendations": { - "$ref": "#/definitions/VmRecommendations" - }, - "pathRecommendations": { - "$ref": "#/definitions/PathRecommendations" - } - } - }, - "AppWhitelistingPutGroupData": { - "type": "object", - "description": "The altered data of the recommended VM/server group policy", - "properties": { - "enforcementMode": { - "description": "The enforcement mode of the group. Can also be defined per collection type by using ProtectionMode", - "$ref": "#/definitions/EnforcementMode" - }, - "protectionMode": { - "description": "The protection mode of the group per collection type. Can also be defined for all collection types by using EnforcementMode", - "$ref": "#/definitions/ProtectionMode" - }, - "vmRecommendations": { - "$ref": "#/definitions/VmRecommendations" - }, - "pathRecommendations": { - "$ref": "#/definitions/PathRecommendations" - } - } - }, - "ConfigurationStatus": { - "type": "string", - "description": "The configuration status of the VM/server group or machine or rule on the machine", - "enum": [ - "Configured", - "NotConfigured", - "InProgress", - "Failed", - "NoStatus" - ] - }, - "EnforcementMode": { - "type": "string", - "description": "The application control policy enforcement/protection mode of the VM/server group", - "enum": [ - "Audit", - "Enforce", - "None" - ] - }, - "EnforcementSupport": { - "type": "string", - "description": "The VM/server supportability of Enforce feature", - "enum": [ - "Supported", - "NotSupported", - "Unknown" - ] - }, - "ProtectionMode": { - "type": "object", - "description": "The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, Executable is used for Linux.", - "properties": { - "exe": { - "$ref": "#/definitions/EnforcementMode" - }, - "msi": { - "$ref": "#/definitions/EnforcementMode" - }, - "script": { - "$ref": "#/definitions/EnforcementMode" - }, - "executable": { - "$ref": "#/definitions/EnforcementMode" - } - } - }, - "RecommendationStatus": { - "type": "string", - "description": "The recommendation status of the VM/server group or VM/server", - "enum": [ - "Recommended", - "NotRecommended", - "NotAvailable", - "NoStatus" - ] - }, - "RecommendationAction": { - "type": "string", - "description": "The recommendation action of the VM/server or rule", - "enum": [ - "Recommended", - "Add", - "Remove" - ] - }, - "RecommendationType": { - "type": "string", - "description": "The type of the rule to be allowed", - "enum": [ - "File", - "FileHash", - "PublisherSignature", - "ProductSignature", - "BinarySignature", - "VersionAndAboveSignature" - ] - }, - "AppWhitelistingIssue": { - "type": "string", - "description": "An alert that VMs/servers within a group can have", - "enum": [ - "ViolationsAudited", - "ViolationsBlocked", - "MsiAndScriptViolationsAudited", - "MsiAndScriptViolationsBlocked", - "ExecutableViolationsAudited", - "RulesViolatedManually" - ] - }, - "FileType": { - "type": "string", - "description": "The type of the file (for Linux files - Executable is used)", - "enum": [ - "Exe", - "Dll", - "Msi", - "Script", - "Executable", - "Unknown" - ] - }, - "SourceSystem": { - "type": "string", - "description": "The source type of the VM/server group", - "enum": [ - "Azure_AppLocker", - "Azure_AuditD", - "NonAzure_AppLocker", - "NonAzure_AuditD", - "None" - ] - }, - "AppWhitelistingIssueSummary": { - "type": "object", - "description": "Represents a summary of the alerts of the VM/server group", - "properties": { - "issue": { - "$ref": "#/definitions/AppWhitelistingIssue" - }, - "numberOfVms": { - "type": "number", - "description": "The number of machines in the VM/server group that have this alert" - } - } - }, - "AppWhitelistingIssuesSummaries": { - "type": "array", - "items": { - "$ref": "#/definitions/AppWhitelistingIssueSummary" - } - }, - "VmRecommendations": { - "type": "array", - "items": { - "$ref": "#/definitions/VmRecommendation" - } - }, - "VmRecommendation": { - "type": "object", - "description": "Represents a machine that is part of a VM/server group", - "properties": { - "configurationStatus": { - "$ref": "#/definitions/ConfigurationStatus" - }, - "recommendationAction": { - "$ref": "#/definitions/RecommendationAction" - }, - "resourceId": { - "$ref": "#/definitions/VmResourceId" - }, - "enforcementSupport": { - "$ref": "#/definitions/EnforcementSupport" - } - } - }, - "PublisherInfo": { - "type": "object", - "description": "Represents the publisher information of a process/rule", - "properties": { - "publisherName": { - "type": "string", - "description": "The Subject field of the x.509 certificate used to sign the code, using the following fields - O = Organization, L = Locality, S = State or Province, and C = Country", - "example": "O=GOOGLE INC, L=MOUNTAIN VIEW, S=CALIFORNIA, C=US" - }, - "productName": { - "type": "string", - "description": "The product name taken from the file's version resource", - "example": "GOOGLE CHROME" - }, - "binaryName": { - "type": "string", - "description": "The \"OriginalName\" field taken from the file's version resource", - "example": "CHROME.EXE" - }, - "version": { - "type": "string", - "description": "The binary file version taken from the file's version resource", - "example": "66.0.3359.139" - } - } - }, - "UserRecommendation": { - "type": "object", - "description": "Represents a user that is recommended to be allowed for a certain rule", - "properties": { - "username": { - "type": "string", - "description": "Represents a user that is recommended to be allowed for a certain rule", - "example": "LOCAL SYSTEM" - }, - "recommendationAction": { - "$ref": "#/definitions/RecommendationAction" - } - } - }, - "PathRecommendations": { - "type": "array", - "items": { - "$ref": "#/definitions/PathRecommendation" - } - }, - "PathRecommendation": { - "type": "object", - "description": "Represents a path that is recommended to be allowed and its properties", - "properties": { - "path": { - "type": "string", - "description": "The full path to the application to allow", - "example": "C:\\Windows\\System32\\calc.exe" - }, - "action": { - "$ref": "#/definitions/RecommendationAction" - }, - "type": { - "$ref": "#/definitions/RecommendationType" - }, - "publisherInfo": { - "$ref": "#/definitions/PublisherInfo" - }, - "common": { - "type": "boolean", - "description": "Whether the path is commonly run on the machine" - }, - "userSids": { - "type": "array", - "items": { - "type": "string", - "description": "A security identifier", - "example": "S-1-5-18" - } - }, - "usernames": { - "type": "array", - "items": { - "$ref": "#/definitions/UserRecommendation" - } - }, - "fileType": { - "$ref": "#/definitions/FileType" - }, - "configurationStatus": { - "$ref": "#/definitions/ConfigurationStatus" - } - } - }, - "GroupResourceId": { - "type": "string", - "description": "The azure resource id of the application control VM/server group", - "example": "/subscriptions/12345678-1234-1234-1234-123456789123/providers/Microsoft.Security/applicationWhitelistings/GROUP1" - }, - "VmResourceId": { - "type": "string", - "description": "The full azure resource id of the machine", - "example": "/subscriptions/12345678-1234-1234-1234-123456789123/resourcegroups/group/providers/microsoft.compute/virtualmachines/vm" - }, - "AppWhitelistingResourceType": { - "type": "string", - "description": "The resource type of the application control resources", - "example": "Microsoft.Security/applicationWhitelistings" - } - }, - "parameters": { - "GroupName": { - "name": "groupName", - "in": "path", - "description": "Name of an application control VM/server group", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "IncludePathRecommendations": { - "name": "includePathRecommendations", - "in": "query", - "description": "Include the policy rules", - "type": "boolean", - "required": false, - "enum": [ - false, - true - ], - "x-ms-parameter-location": "method" - }, - "Summary": { - "name": "summary", - "in": "query", - "description": "Return output in a summarized form", - "type": "boolean", - "required": false, - "enum": [ - false, - true - ], - "x-ms-parameter-location": "method" - }, - "AppWhitelistingGroupDataPutDataBody": { - "in": "body", - "name": "body", - "description": "The updated VM/server group data", - "required": true, - "schema": { - "$ref": "#/definitions/AppWhitelistingPutGroupData" - }, - "x-ms-parameter-location": "method" - } - } -} diff --git a/swagger-specs/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/pricings.json b/swagger-specs/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/pricings.json deleted file mode 100644 index b6691a2e5..000000000 --- a/swagger-specs/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/pricings.json +++ /dev/null @@ -1,372 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Microsoft Defender for Cloud", - "description": "API spec for Microsoft.Security (Microsoft Defender for Cloud) resource provider", - "version": "2017-08-01-preview" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings": { - "get": { - "x-ms-examples": { - "Get pricings on subscription": { - "$ref": "./examples/Pricings/GetPricingsSubscription_example.json" - } - }, - "tags": [ - "Pricings" - ], - "description": "Security pricing configurations in the subscription", - "operationId": "Pricings_List", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/PricingList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings": { - "get": { - "x-ms-examples": { - "Get pricings on subscription": { - "$ref": "./examples/Pricings/GetPricingsResourceGroup_example.json" - } - }, - "tags": [ - "Pricings" - ], - "description": "Security pricing configurations in the resource group", - "operationId": "Pricings_ListByResourceGroup", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/PricingList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}": { - "get": { - "x-ms-examples": { - "Get pricings on subscription": { - "$ref": "./examples/Pricings/GetPricingSubscription_example.json" - } - }, - "tags": [ - "Pricings" - ], - "description": "Security pricing configuration in the subscriptionSecurity pricing configuration in the subscription", - "operationId": "Pricings_GetSubscriptionPricing", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "#/parameters/PricingName" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Pricing" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - }, - "put": { - "x-ms-examples": { - "Update pricings on subscription": { - "$ref": "./examples/Pricings/CreatePricingsSubscription_example.json" - } - }, - "tags": [ - "Pricings" - ], - "description": "Security pricing configuration in the subscription", - "operationId": "Pricings_UpdateSubscriptionPricing", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "#/parameters/PricingName" - }, - { - "$ref": "#/parameters/Pricing" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Pricing" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings/{pricingName}": { - "get": { - "x-ms-examples": { - "Get pricings on subscription": { - "$ref": "./examples/Pricings/GetPricingResourceGroup_example.json" - } - }, - "tags": [ - "Pricings" - ], - "description": "Security pricing configuration in the resource group", - "operationId": "Pricings_GetResourceGroupPricing", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "$ref": "#/parameters/PricingName" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Pricing" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - }, - "put": { - "x-ms-examples": { - "Update pricings on resource group": { - "$ref": "./examples/Pricings/CreatePricingsResourceGroup_example.json" - } - }, - "tags": [ - "Pricings" - ], - "description": "Security pricing configuration in the resource group", - "operationId": "Pricings_CreateOrUpdateResourceGroupPricing", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "$ref": "#/parameters/PricingName" - }, - { - "$ref": "#/parameters/Pricing" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Pricing" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "PricingList": { - "description": "List of pricing configurations response", - "required": [ - "value" - ], - "properties": { - "value": { - "type": "array", - "description": "List of pricing configurations", - "items": { - "$ref": "#/definitions/Pricing" - } - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URI to fetch the next page." - } - } - }, - "Pricing": { - "type": "object", - "description": "Pricing tier will be applied for the scope based on the resource ID", - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Pricing data", - "$ref": "#/definitions/PricingProperties" - } - }, - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/Resource" - } - ] - }, - "PricingProperties": { - "type": "object", - "description": "Pricing data", - "properties": { - "pricingTier": { - "type": "string", - "description": "Pricing tier type", - "enum": [ - "Free", - "Standard" - ], - "x-ms-enum": { - "name": "pricingTier", - "modelAsString": true, - "values": [ - { - "value": "Free", - "description": "Get free Microsoft Defender for Cloud experience with basic security features" - }, - { - "value": "Standard", - "description": "Get the standard Microsoft Defender for Cloud experience with advanced security features" - } - ] - } - } - }, - "required": [ - "pricingTier" - ] - } - }, - "parameters": { - "PricingName": { - "name": "pricingName", - "in": "path", - "required": true, - "type": "string", - "description": "name of the pricing configuration", - "x-ms-parameter-location": "method" - }, - "Pricing": { - "name": "pricing", - "in": "body", - "required": true, - "description": "Pricing object", - "schema": { - "$ref": "#/definitions/Pricing" - }, - "x-ms-parameter-location": "method" - } - } -} diff --git a/swagger-specs/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json b/swagger-specs/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json deleted file mode 100644 index 2ebdf5f5f..000000000 --- a/swagger-specs/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json +++ /dev/null @@ -1,416 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Microsoft Defender for Cloud", - "description": "API spec for Microsoft.Security (Microsoft Defender for Cloud) resource provider", - "version": "2020-01-01" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings": { - "get": { - "x-ms-examples": { - "List Adaptive Network Hardenings resources of an extended resource": { - "$ref": "./examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json" - } - }, - "description": "Gets a list of Adaptive Network Hardenings resources in scope of an extended resource.", - "tags": [ - "AdaptiveNetworkHardenings" - ], - "operationId": "AdaptiveNetworkHardenings_ListByExtendedResource", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "name": "resourceNamespace", - "in": "path", - "description": "The Namespace of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "The type of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Name of the resource.", - "required": true, - "type": "string" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveNetworkHardeningsList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}": { - "get": { - "x-ms-examples": { - "Get a single Adaptive Network Hardening resource": { - "$ref": "./examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json" - } - }, - "tags": [ - "AdaptiveNetworkHardenings" - ], - "description": "Gets a single Adaptive Network Hardening resource", - "operationId": "AdaptiveNetworkHardenings_Get", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "name": "resourceNamespace", - "in": "path", - "description": "The Namespace of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "The type of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Name of the resource.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveNetworkHardening" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}/{adaptiveNetworkHardeningEnforceAction}": { - "post": { - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Enforces the given rules on the NSG(s) listed in the request": { - "$ref": "./examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json" - } - }, - "tags": [ - "AdaptiveNetworkHardenings" - ], - "description": "Enforces the given rules on the NSG(s) listed in the request", - "operationId": "AdaptiveNetworkHardenings_Enforce", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" - }, - { - "name": "resourceNamespace", - "in": "path", - "description": "The Namespace of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "The type of the resource.", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Name of the resource.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceAction" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceRequest" - } - ], - "responses": { - "200": { - "description": "OK." - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "PortNumber": { - "type": "integer", - "minimum": 0, - "maximum": 65535 - }, - "Rule": { - "description": "Describes remote addresses that is recommended to communicate with the Azure resource on some (Protocol, Port, Direction). All other remote addresses are recommended to be blocked", - "properties": { - "name": { - "description": "The name of the rule", - "type": "string" - }, - "direction": { - "description": "The rule's direction", - "type": "string", - "enum": [ - "Inbound", - "Outbound" - ], - "x-ms-enum": { - "name": "direction", - "modelAsString": true - } - }, - "destinationPort": { - "description": "The rule's destination port", - "$ref": "#/definitions/PortNumber" - }, - "protocols": { - "description": "The rule's transport protocols", - "type": "array", - "items": { - "type": "string", - "enum": [ - "TCP", - "UDP" - ], - "x-ms-enum": { - "name": "transportProtocol", - "modelAsString": true - } - } - }, - "ipAddresses": { - "description": "The remote IP addresses that should be able to communicate with the Azure resource on the rule's destination port and protocol", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "EffectiveNetworkSecurityGroups": { - "description": "Describes the Network Security Groups effective on a network interface", - "properties": { - "networkInterface": { - "description": "The Azure resource ID of the network interface", - "type": "string" - }, - "networkSecurityGroups": { - "description": "The Network Security Groups effective on the network interface", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "AdaptiveNetworkHardeningProperties": { - "description": "Adaptive Network Hardening resource properties", - "properties": { - "rules": { - "description": "The security rules which are recommended to be effective on the VM", - "type": "array", - "items": { - "$ref": "#/definitions/Rule" - } - }, - "rulesCalculationTime": { - "type": "string", - "format": "date-time", - "description": "The UTC time on which the rules were calculated" - }, - "effectiveNetworkSecurityGroups": { - "description": "The Network Security Groups effective on the network interfaces of the protected resource", - "type": "array", - "items": { - "$ref": "#/definitions/EffectiveNetworkSecurityGroups" - } - } - } - }, - "AdaptiveNetworkHardening": { - "description": "The resource whose properties describes the Adaptive Network Hardening settings for some Azure resource", - "properties": { - "properties": { - "description": "Properties of the Adaptive Network Hardening resource", - "x-ms-client-flatten": true, - "$ref": "#/definitions/AdaptiveNetworkHardeningProperties" - } - }, - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/Resource" - } - ] - }, - "AdaptiveNetworkHardeningsList": { - "description": "Response for ListAdaptiveNetworkHardenings API service call", - "properties": { - "value": { - "description": "A list of Adaptive Network Hardenings resources", - "type": "array", - "items": { - "$ref": "#/definitions/AdaptiveNetworkHardening" - } - }, - "nextLink": { - "description": "The URL to get the next set of results", - "type": "string" - } - } - }, - "AdaptiveNetworkHardeningEnforceRequest": { - "type": "object", - "properties": { - "rules": { - "type": "array", - "description": "The rules to enforce", - "items": { - "$ref": "#/definitions/Rule" - } - }, - "networkSecurityGroups": { - "type": "array", - "description": "The Azure resource IDs of the effective network security groups that will be updated with the created security rules from the Adaptive Network Hardening rules", - "items": { - "type": "string" - } - } - }, - "required": [ - "rules", - "networkSecurityGroups" - ] - } - }, - "parameters": { - "AdaptiveNetworkHardeningResourceName": { - "name": "adaptiveNetworkHardeningResourceName", - "in": "path", - "description": "The name of the Adaptive Network Hardening resource.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AdaptiveNetworkHardeningEnforceAction": { - "name": "adaptiveNetworkHardeningEnforceAction", - "type": "string", - "in": "path", - "required": true, - "description": "Enforces the given rules on the NSG(s) listed in the request", - "enum": [ - "enforce" - ], - "x-ms-enum": { - "name": "AdaptiveNetworkHardeningEnforceAction", - "modelAsString": false - }, - "x-ms-parameter-location": "method" - }, - "AdaptiveNetworkHardeningEnforceRequest": { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AdaptiveNetworkHardeningEnforceRequest" - }, - "x-ms-parameter-location": "method" - } - } -} diff --git a/swagger-specs/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json b/swagger-specs/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json deleted file mode 100644 index 416653479..000000000 --- a/swagger-specs/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json +++ /dev/null @@ -1,576 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Microsoft Defender for Cloud", - "description": "API spec for Microsoft.Security (Microsoft Defender for Cloud) resource provider", - "version": "2020-01-01" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applicationWhitelistings": { - "get": { - "description": "Gets a list of application control machine groups for the subscription.", - "operationId": "AdaptiveApplicationControls_List", - "x-ms-examples": { - "Gets a list of application control groups of machines for the subscription": { - "$ref": "./examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsSubscription_example.json" - } - }, - "tags": [ - "applicationWhitelistings" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/IncludePathRecommendations" - }, - { - "$ref": "#/parameters/Summary" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveApplicationControlGroups" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}": { - "get": { - "description": "Gets an application control VM/server group.", - "operationId": "AdaptiveApplicationControls_Get", - "x-ms-examples": { - "Gets a configured application control VM/server group": { - "$ref": "./examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsGroup_example.json" - } - }, - "tags": [ - "applicationWhitelistings" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/AscLocation" - }, - { - "$ref": "#/parameters/GroupName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveApplicationControlGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "applicationWhitelistings" - ], - "x-ms-examples": { - "Update an application control machine group by adding a new application": { - "$ref": "./examples/ApplicationWhitelistings/PutAdaptiveApplicationControls_example.json" - } - }, - "description": "Update an application control machine group", - "operationId": "AdaptiveApplicationControls_Put", - "consumes": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/AscLocation" - }, - { - "$ref": "#/parameters/GroupName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - }, - { - "$ref": "#/parameters/AdaptiveApplicationControlGroup" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/AdaptiveApplicationControlGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - }, - "delete": { - "x-ms-examples": { - "Delete an application control machine group": { - "$ref": "./examples/ApplicationWhitelistings/DeleteAdaptiveApplicationControls_example.json" - } - }, - "tags": [ - "applicationWhitelistings" - ], - "description": "Delete an application control machine group", - "operationId": "AdaptiveApplicationControls_Delete", - "parameters": [ - { - "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/AscLocation" - }, - { - "$ref": "#/parameters/GroupName" - }, - { - "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" - } - ], - "responses": { - "200": { - "description": "OK - The response indicates that the delete operation completed successfully" - }, - "202": { - "description": "Accepted. The response indicates the delete operation is performed in the background." - }, - "204": { - "description": "No Content. The response indicates the resource is already deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../common/v1/types.json#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "AdaptiveApplicationControlGroups": { - "type": "object", - "description": "Represents a list of VM/server groups and set of rules that are Recommended by Microsoft Defender for Cloud to be allowed", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/AdaptiveApplicationControlGroup" - } - } - } - }, - "AdaptiveApplicationControlGroup": { - "type": "object", - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/AdaptiveApplicationControlGroupData" - } - }, - "required": [ - "properties" - ], - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/Resource" - }, - { - "$ref": "../../../common/v1/types.json#/definitions/Location" - } - ] - }, - "AdaptiveApplicationControlGroupData": { - "type": "object", - "description": "Represents a machines group and set of rules to be allowed running on a machine", - "properties": { - "enforcementMode": { - "$ref": "#/definitions/EnforcementMode" - }, - "protectionMode": { - "$ref": "#/definitions/ProtectionMode" - }, - "configurationStatus": { - "readOnly": true, - "$ref": "#/definitions/ConfigurationStatus" - }, - "recommendationStatus": { - "readOnly": true, - "$ref": "#/definitions/RecommendationStatus" - }, - "issues": { - "readOnly": true, - "$ref": "#/definitions/AdaptiveApplicationControlIssuesSummaries" - }, - "sourceSystem": { - "readOnly": true, - "$ref": "#/definitions/SourceSystem" - }, - "vmRecommendations": { - "$ref": "#/definitions/VmRecommendations" - }, - "pathRecommendations": { - "$ref": "#/definitions/PathRecommendations" - } - } - }, - "ConfigurationStatus": { - "type": "string", - "description": "The configuration status of the machines group or machine or rule", - "enum": [ - "Configured", - "NotConfigured", - "InProgress", - "Failed", - "NoStatus" - ] - }, - "EnforcementMode": { - "type": "string", - "description": "The application control policy enforcement/protection mode of the machine group", - "enum": [ - "Audit", - "Enforce", - "None" - ] - }, - "EnforcementSupport": { - "type": "string", - "description": "The machine supportability of Enforce feature", - "enum": [ - "Supported", - "NotSupported", - "Unknown" - ] - }, - "ProtectionMode": { - "type": "object", - "description": "The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, Executable is used for Linux.", - "properties": { - "exe": { - "$ref": "#/definitions/EnforcementMode" - }, - "msi": { - "$ref": "#/definitions/EnforcementMode" - }, - "script": { - "$ref": "#/definitions/EnforcementMode" - }, - "executable": { - "$ref": "#/definitions/EnforcementMode" - } - } - }, - "RecommendationStatus": { - "type": "string", - "description": "The initial recommendation status of the machine group or machine", - "enum": [ - "Recommended", - "NotRecommended", - "NotAvailable", - "NoStatus" - ] - }, - "RecommendationAction": { - "type": "string", - "description": "The recommendation action of the machine or rule", - "enum": [ - "Recommended", - "Add", - "Remove" - ] - }, - "RecommendationType": { - "type": "string", - "description": "The type of the rule to be allowed", - "enum": [ - "File", - "FileHash", - "PublisherSignature", - "ProductSignature", - "BinarySignature", - "VersionAndAboveSignature" - ] - }, - "AdaptiveApplicationControlIssue": { - "type": "string", - "description": "An alert that machines within a group can have", - "enum": [ - "ViolationsAudited", - "ViolationsBlocked", - "MsiAndScriptViolationsAudited", - "MsiAndScriptViolationsBlocked", - "ExecutableViolationsAudited", - "RulesViolatedManually" - ] - }, - "FileType": { - "type": "string", - "description": "The type of the file (for Linux files - Executable is used)", - "enum": [ - "Exe", - "Dll", - "Msi", - "Script", - "Executable", - "Unknown" - ] - }, - "SourceSystem": { - "type": "string", - "description": "The source type of the machine group", - "enum": [ - "Azure_AppLocker", - "Azure_AuditD", - "NonAzure_AppLocker", - "NonAzure_AuditD", - "None" - ] - }, - "AdaptiveApplicationControlIssueSummary": { - "type": "object", - "description": "Represents a summary of the alerts of the machine group", - "properties": { - "issue": { - "$ref": "#/definitions/AdaptiveApplicationControlIssue" - }, - "numberOfVms": { - "type": "number", - "description": "The number of machines in the group that have this alert" - } - } - }, - "AdaptiveApplicationControlIssuesSummaries": { - "type": "array", - "items": { - "$ref": "#/definitions/AdaptiveApplicationControlIssueSummary" - } - }, - "VmRecommendations": { - "type": "array", - "items": { - "$ref": "#/definitions/VmRecommendation" - } - }, - "VmRecommendation": { - "type": "object", - "description": "Represents a machine that is part of a machine group", - "properties": { - "configurationStatus": { - "$ref": "#/definitions/ConfigurationStatus" - }, - "recommendationAction": { - "$ref": "#/definitions/RecommendationAction" - }, - "resourceId": { - "$ref": "#/definitions/VmResourceId" - }, - "enforcementSupport": { - "$ref": "#/definitions/EnforcementSupport" - } - } - }, - "PublisherInfo": { - "type": "object", - "description": "Represents the publisher information of a process/rule", - "properties": { - "publisherName": { - "type": "string", - "description": "The Subject field of the x.509 certificate used to sign the code, using the following fields - O = Organization, L = Locality, S = State or Province, and C = Country", - "example": "O=GOOGLE INC, L=MOUNTAIN VIEW, S=CALIFORNIA, C=US" - }, - "productName": { - "type": "string", - "description": "The product name taken from the file's version resource", - "example": "GOOGLE CHROME" - }, - "binaryName": { - "type": "string", - "description": "The \"OriginalName\" field taken from the file's version resource", - "example": "CHROME.EXE" - }, - "version": { - "type": "string", - "description": "The binary file version taken from the file's version resource", - "example": "66.0.3359.139" - } - } - }, - "UserRecommendation": { - "type": "object", - "description": "Represents a user that is recommended to be allowed for a certain rule", - "properties": { - "username": { - "type": "string", - "description": "Represents a user that is recommended to be allowed for a certain rule", - "example": "LOCAL SYSTEM" - }, - "recommendationAction": { - "$ref": "#/definitions/RecommendationAction" - } - } - }, - "PathRecommendations": { - "type": "array", - "items": { - "$ref": "#/definitions/PathRecommendation" - } - }, - "PathRecommendation": { - "type": "object", - "description": "Represents a path that is recommended to be allowed and its properties", - "properties": { - "path": { - "type": "string", - "description": "The full path of the file, or an identifier of the application", - "example": "C:\\Windows\\System32\\calc.exe" - }, - "action": { - "$ref": "#/definitions/RecommendationAction" - }, - "type": { - "$ref": "#/definitions/RecommendationType" - }, - "publisherInfo": { - "$ref": "#/definitions/PublisherInfo" - }, - "common": { - "type": "boolean", - "description": "Whether the application is commonly run on the machine" - }, - "userSids": { - "type": "array", - "items": { - "type": "string", - "description": "A security identifier", - "example": "S-1-5-18" - } - }, - "usernames": { - "type": "array", - "items": { - "$ref": "#/definitions/UserRecommendation" - } - }, - "fileType": { - "$ref": "#/definitions/FileType" - }, - "configurationStatus": { - "$ref": "#/definitions/ConfigurationStatus" - } - } - }, - "GroupResourceId": { - "type": "string", - "description": "The azure resource id of the application control machine group", - "example": "/subscriptions/12345678-1234-1234-1234-123456789123/providers/Microsoft.Security/applicationWhitelistings/GROUP1" - }, - "VmResourceId": { - "type": "string", - "description": "The full resource id of the machine", - "example": "/subscriptions/12345678-1234-1234-1234-123456789123/resourcegroups/group/providers/microsoft.compute/virtualmachines/vm" - } - }, - "parameters": { - "GroupName": { - "name": "groupName", - "in": "path", - "description": "Name of an application control machine group", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "IncludePathRecommendations": { - "name": "includePathRecommendations", - "in": "query", - "description": "Include the policy rules", - "type": "boolean", - "required": false, - "x-ms-parameter-location": "method" - }, - "Summary": { - "name": "summary", - "in": "query", - "description": "Return output in a summarized form", - "type": "boolean", - "required": false, - "x-ms-parameter-location": "method" - }, - "AdaptiveApplicationControlGroup": { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AdaptiveApplicationControlGroup" - }, - "x-ms-parameter-location": "method" - } - } -} diff --git a/swagger-specs/security/resource-manager/api-set.json b/swagger-specs/security/resource-manager/api-set.json index 2a5cb3a95..c39da1c84 100644 --- a/swagger-specs/security/resource-manager/api-set.json +++ b/swagger-specs/security/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Security/preview/2015-06-01-preview/locations.json", "Microsoft.Security/preview/2015-06-01-preview/operations.json", "Microsoft.Security/preview/2015-06-01-preview/tasks.json", "Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json", "Microsoft.Security/preview/2017-08-01-preview/compliances.json", "Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json", "Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json", "Microsoft.Security/preview/2019-01-01-preview/alertsSuppressionRules.json", "Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json", "Microsoft.Security/preview/2019-01-01-preview/subAssessments.json", "Microsoft.Security/preview/2020-01-01-preview/connectors.json", "Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json", "Microsoft.Security/preview/2021-07-01-preview/customAssessmentAutomation.json", "Microsoft.Security/preview/2021-07-01-preview/customEntityStoreAssignment.json", "Microsoft.Security/preview/2021-10-01-preview/mdeOnboardings.json", "Microsoft.Security/preview/2022-01-01-preview/governanceAssignments.json", "Microsoft.Security/preview/2022-01-01-preview/governanceRules.json", "Microsoft.Security/preview/2022-07-01-preview/applications.json", "Microsoft.Security/preview/2022-12-01-preview/defenderForStorageSettings.json", "Microsoft.Security/preview/2023-01-01-preview/securityOperators.json", "Microsoft.Security/preview/2023-02-01-preview/sqlVulnerabilityAssessmentsBaselineRuleOperations.json", "Microsoft.Security/preview/2023-02-01-preview/sqlVulnerabilityAssessmentsScanOperations.json", "Microsoft.Security/preview/2023-02-01-preview/sqlVulnerabilityAssessmentsScanResultsOperations.json", "Microsoft.Security/preview/2023-02-15-preview/sensitivitySettings.json", "Microsoft.Security/preview/2023-05-01-preview/healthReports.json", "Microsoft.Security/preview/2023-12-01-preview/automations.json", "Microsoft.Security/preview/2023-12-01-preview/securityContacts.json", "Microsoft.Security/preview/2024-03-01-preview/securityConnectors.json", "Microsoft.Security/preview/2024-05-15-preview/securityConnectorsDevOps.json", "Microsoft.Security/stable/2017-08-01/complianceResults.json", "Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json", "Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json", "Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json", "Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json", "Microsoft.Security/stable/2020-01-01/allowedConnections.json", "Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json", "Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json", "Microsoft.Security/stable/2020-01-01/secureScore.json", "Microsoft.Security/stable/2020-01-01/SecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/securitySolutionsReferenceData.json", "Microsoft.Security/stable/2020-01-01/serverVulnerabilityAssessments.json", "Microsoft.Security/stable/2020-01-01/topologies.json", "Microsoft.Security/stable/2021-06-01/assessmentMetadata.json", "Microsoft.Security/stable/2021-06-01/assessments.json", "Microsoft.Security/stable/2022-01-01/alerts.json", "Microsoft.Security/stable/2022-05-01/settings.json", "Microsoft.Security/stable/2023-05-01/ServerVulnerabilityAssessmentsSettings.json", "Microsoft.Security/stable/2023-11-15/apiCollections.json", "Microsoft.Security/stable/2024-01-01/pricings.json"], "name": "package-composite-v3"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Security/preview/2015-06-01-preview/locations.json", "Microsoft.Security/preview/2015-06-01-preview/operations.json", "Microsoft.Security/preview/2015-06-01-preview/tasks.json", "Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json", "Microsoft.Security/preview/2017-08-01-preview/compliances.json", "Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json", "Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json", "Microsoft.Security/preview/2019-01-01-preview/alertsSuppressionRules.json", "Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json", "Microsoft.Security/preview/2019-01-01-preview/subAssessments.json", "Microsoft.Security/preview/2020-01-01-preview/connectors.json", "Microsoft.Security/preview/2021-05-01-preview/softwareInventories.json", "Microsoft.Security/preview/2021-07-01-preview/customAssessmentAutomation.json", "Microsoft.Security/preview/2021-07-01-preview/customEntityStoreAssignment.json", "Microsoft.Security/preview/2021-10-01-preview/mdeOnboardings.json", "Microsoft.Security/preview/2022-01-01-preview/governanceAssignments.json", "Microsoft.Security/preview/2022-01-01-preview/governanceRules.json", "Microsoft.Security/preview/2022-07-01-preview/applications.json", "Microsoft.Security/preview/2022-12-01-preview/defenderForStorageSettings.json", "Microsoft.Security/preview/2023-01-01-preview/securityOperators.json", "Microsoft.Security/preview/2023-02-01-preview/sqlVulnerabilityAssessmentsBaselineRuleOperations.json", "Microsoft.Security/preview/2023-02-01-preview/sqlVulnerabilityAssessmentsScanOperations.json", "Microsoft.Security/preview/2023-02-01-preview/sqlVulnerabilityAssessmentsScanResultsOperations.json", "Microsoft.Security/preview/2023-02-15-preview/sensitivitySettings.json", "Microsoft.Security/preview/2023-05-01-preview/healthReports.json", "Microsoft.Security/preview/2023-12-01-preview/automations.json", "Microsoft.Security/preview/2023-12-01-preview/securityContacts.json", "Microsoft.Security/preview/2024-03-01-preview/securityConnectors.json", "Microsoft.Security/preview/2024-05-15-preview/securityConnectorsDevOps.json", "Microsoft.Security/stable/2017-08-01/complianceResults.json", "Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json", "Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json", "Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json", "Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/allowedConnections.json", "Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json", "Microsoft.Security/stable/2020-01-01/secureScore.json", "Microsoft.Security/stable/2020-01-01/SecuritySolutions.json", "Microsoft.Security/stable/2020-01-01/securitySolutionsReferenceData.json", "Microsoft.Security/stable/2020-01-01/serverVulnerabilityAssessments.json", "Microsoft.Security/stable/2020-01-01/topologies.json", "Microsoft.Security/stable/2021-06-01/assessmentMetadata.json", "Microsoft.Security/stable/2021-06-01/assessments.json", "Microsoft.Security/stable/2022-01-01/alerts.json", "Microsoft.Security/stable/2022-05-01/settings.json", "Microsoft.Security/stable/2023-05-01/ServerVulnerabilityAssessmentsSettings.json", "Microsoft.Security/stable/2023-11-15/apiCollections.json", "Microsoft.Security/stable/2024-01-01/pricings.json"], "name": "package-composite-v3"} \ No newline at end of file diff --git a/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/managedapplication.json b/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/managedapplication.json similarity index 99% rename from swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/managedapplication.json rename to swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/managedapplication.json index a2ca26816..da43f59a8 100644 --- a/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/managedapplication.json +++ b/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/managedapplication.json @@ -3,7 +3,7 @@ "info": { "title": "ServiceFabricManagementClient", "description": "Azure Service Fabric Resource Provider API Client", - "version": "2024-04-01" + "version": "2024-06-01-preview" }, "host": "management.azure.com", "schemes": [ @@ -2975,7 +2975,7 @@ "api-version": { "name": "api-version", "in": "query", - "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2024-04-01\" for this specification.", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2024-06-01-preview\" for this specification.", "required": true, "type": "string", "x-ms-parameter-location": "client" diff --git a/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/managedcluster.json b/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/managedcluster.json similarity index 97% rename from swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/managedcluster.json rename to swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/managedcluster.json index 019c4b155..96ea46b4e 100644 --- a/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/managedcluster.json +++ b/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/managedcluster.json @@ -3,7 +3,7 @@ "info": { "title": "ServiceFabricManagementClient", "description": "Azure Service Fabric Resource Provider API Client", - "version": "2024-04-01" + "version": "2024-06-01-preview" }, "host": "management.azure.com", "schemes": [ @@ -910,6 +910,38 @@ }, "description": "The policy used to clean up unused versions. When the policy is not specified explicitly, the default unused application versions to keep will be 3." }, + "AutoGeneratedDomainNameLabelScope": { + "type": "string", + "enum": [ + "TenantReuse", + "SubscriptionReuse", + "ResourceGroupReuse", + "NoReuse" + ], + "x-ms-enum": { + "name": "AutoGeneratedDomainNameLabelScope", + "modelAsString": true, + "values": [ + { + "value": "TenantReuse", + "description": "TenantReuse allows for the same hash to be created if the resource is created in the same Tenant with the same resource name." + }, + { + "value": "SubscriptionReuse", + "description": "SubscriptionReuse allows for the same hash to be created if the resource is created in the same Subscription with the same resource name." + }, + { + "value": "ResourceGroupReuse", + "description": "ResourceGroupReuse allows for the same hash to be created if the resource is created in the same Resource Group with the same resource name." + }, + { + "value": "NoReuse", + "description": "NoReuse will create a new hash regardless of the Subscription, Resource Group, Tenant and Resource name." + } + ] + }, + "description": "This enum is the entrypoint to using a certificate from a public CA for your cluster. This property was introduced to solve the\ndomain squatting problem with new domains. A domain name will be generated in the following format: ....\nThe hash portion comes from Azure DNS' Deterministic Name Library. The library creates a hash using the cluster's Tenant, Subscription, Resource Group\nand Resource Name using the AutoGeneratedDomainNameLabelScope/reuse policy chosen.\n" + }, "AzureActiveDirectory": { "type": "object", "properties": { @@ -1566,6 +1598,14 @@ "enableHttpGatewayExclusiveAuthMode": { "type": "boolean", "description": "If true, token-based authentication is not allowed on the HttpGatewayEndpoint. This is required to support TLS versions 1.3 and above. If token-based authentication is used, HttpGatewayTokenAuthConnectionPort must be defined." + }, + "autoGeneratedDomainNameLabelScope": { + "$ref": "#/definitions/AutoGeneratedDomainNameLabelScope", + "description": "This property is the entry point to using a public CA cert for your cluster cert. It specifies the level of reuse allowed for the custom FQDN created, matching the subject of the public CA cert." + }, + "customFqdn": { + "type": "string", + "description": "If using autoGeneratedDomainNameLabelScope, this is the fully qualified domain name using SFMC's domain, pointing to the public load balancer of the cluster." } }, "description": "Describes the managed cluster resource properties." @@ -2253,7 +2293,7 @@ "api-version": { "name": "api-version", "in": "query", - "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2024-04-01\" for this specification.", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2024-06-01-preview\" for this specification.", "required": true, "type": "string", "x-ms-parameter-location": "client" diff --git a/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/nodetype.json b/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/nodetype.json similarity index 96% rename from swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/nodetype.json rename to swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/nodetype.json index 9d806ed89..2abc6222c 100644 --- a/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/stable/2024-04-01/nodetype.json +++ b/swagger-specs/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabric/preview/2024-06-01-preview/nodetype.json @@ -3,7 +3,7 @@ "info": { "title": "ServiceFabricManagementClient", "description": "Azure Service Fabric Resource Provider API Client", - "version": "2024-04-01" + "version": "2024-06-01-preview" }, "host": "management.azure.com", "schemes": [ @@ -1274,6 +1274,16 @@ "computerNamePrefix": { "type": "string", "description": "Specifies the computer name prefix. Limited to 9 characters. If specified, allows for a longer name to be specified for the node type name." + }, + "vmApplications": { + "type": "array", + "items": { + "$ref": "#/definitions/VmApplication" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "Specifies the gallery applications that should be made available to the underlying VMSS." } }, "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." @@ -1528,6 +1538,49 @@ }, "description": "Specifies set of certificates that should be installed onto the virtual machines." }, + "VmApplication": { + "type": "object", + "required": [ + "packageReferenceId" + ], + "properties": { + "configurationReference": { + "format": "uri", + "type": "string", + "description": "Optional, Specifies the uri to an azure blob that will replace the default configuration for the package if provided." + }, + "enableAutomaticUpgrade": { + "type": "boolean", + "description": "If set to true, when a new Gallery Application version is available in PIR/SIG, it will be automatically updated for the underlying VMSS." + }, + "order": { + "type": "integer", + "format": "int32", + "description": "Optional, Specifies the order in which the packages have to be installed." + }, + "packageReferenceId": { + "type": "string", + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.Compute/galleries/applications/versions" + } + ] + }, + "description": "Specifies the GalleryApplicationVersion resource id on the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version}." + }, + "vmGalleryTags": { + "type": "string", + "description": "Optional, Specifies a passthrough value for more generic context. Accepts a JSON-formatted string e.g. '{\"Tag1\":\"Value1\",\"Tag2\":\"Value2\"}'." + }, + "treatFailureAsDeploymentFailure": { + "type": "boolean", + "description": "Optional, If true, any failure for any operation in the VmApplication will fail the deployment." + } + }, + "description": "Specifies the gallery application that should be made available to the underlying VMSS." + }, "VmImagePlan": { "type": "object", "properties": { @@ -1997,7 +2050,7 @@ "api-version": { "name": "api-version", "in": "query", - "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2024-04-01\" for this specification.", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2024-06-01-preview\" for this specification.", "required": true, "type": "string", "x-ms-parameter-location": "client" diff --git a/swagger-specs/servicefabricmanagedclusters/resource-manager/api-set.json b/swagger-specs/servicefabricmanagedclusters/resource-manager/api-set.json index 872f91e4c..7f2bec926 100644 --- a/swagger-specs/servicefabricmanagedclusters/resource-manager/api-set.json +++ b/swagger-specs/servicefabricmanagedclusters/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.ServiceFabric/stable/2024-04-01/managedapplication.json", "Microsoft.ServiceFabric/stable/2024-04-01/managedcluster.json", "Microsoft.ServiceFabric/stable/2024-04-01/nodetype.json"], "name": "package-2024-04"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.ServiceFabric/preview/2024-06-01-preview/managedapplication.json", "Microsoft.ServiceFabric/preview/2024-06-01-preview/managedcluster.json", "Microsoft.ServiceFabric/preview/2024-06-01-preview/nodetype.json"], "name": "package-2024-06-preview"} \ No newline at end of file diff --git a/swagger-specs/sql/resource-manager/api-set.json b/swagger-specs/sql/resource-manager/api-set.json index fb20c3142..11bd3aba6 100644 --- a/swagger-specs/sql/resource-manager/api-set.json +++ b/swagger-specs/sql/resource-manager/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["Microsoft.Sql/stable/2014-04-01/dataMasking.json", "Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json", "Microsoft.Sql/stable/2014-04-01/metrics.json", "Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json", "Microsoft.Sql/stable/2014-04-01/serviceObjectives.json", "Microsoft.Sql/stable/2014-04-01-legacy/sql.core_legacy.json", "Microsoft.Sql/stable/2014-04-01-legacy/usages_legacy.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseAdvisors.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseAutomaticTuning.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseColumns.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseRecommendedActions.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseSchemas.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseTables.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2020-11-01-preview/DataWarehouseUserActivities.json", "./Microsoft.Sql/preview/2020-11-01-preview/DeletedServers.json", "./Microsoft.Sql/preview/2020-11-01-preview/ElasticPoolOperations.json", "./Microsoft.Sql/preview/2020-11-01-preview/EncryptionProtectors.json", "./Microsoft.Sql/preview/2020-11-01-preview/FirewallRules.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobAgents.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobCredentials.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobExecutions.json", "./Microsoft.Sql/preview/2023-05-01-preview/JobPrivateEndpoints.json", "./Microsoft.Sql/preview/2020-11-01-preview/Jobs.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobStepExecutions.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobSteps.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobTargetExecutions.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobTargetGroups.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobVersions.json", "./Microsoft.Sql/preview/2020-11-01-preview/LocationCapabilities.json", "./Microsoft.Sql/preview/2020-11-01-preview/MaintenanceWindowOptions.json", "./Microsoft.Sql/preview/2020-11-01-preview/MaintenanceWindows.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedBackupShortTermRetentionPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseColumns.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseQueries.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSchemas.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSecurityEvents.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseTables.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseTransparentDataEncryption.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAdministrators.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceEncryptionProtectors.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceLongTermRetentionPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceOperations.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstancePrivateEndpointConnections.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstancePrivateLinkResources.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceTdeCertificates.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/Operations.json", "./Microsoft.Sql/preview/2022-08-01-preview/PrivateEndpointConnections.json", "./Microsoft.Sql/preview/2020-11-01-preview/PrivateLinkResources.json", "./Microsoft.Sql/preview/2020-11-01-preview/RecoverableManagedDatabases.json", "./Microsoft.Sql/preview/2020-11-01-preview/RestorePoints.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAdvisors.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAutomaticTuning.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADAdministrators.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json", "./Microsoft.Sql/preview/2022-02-01-preview/ServerDevOpsAudit.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerDnsAliases.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerOperations.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/SqlAgent.json", "./Microsoft.Sql/preview/2020-11-01-preview/SubscriptionUsages.json", "./Microsoft.Sql/preview/2020-11-01-preview/SyncAgents.json", "./Microsoft.Sql/preview/2020-11-01-preview/SyncGroups.json", "./Microsoft.Sql/preview/2020-11-01-preview/SyncMembers.json", "./Microsoft.Sql/preview/2020-11-01-preview/TdeCertificates.json", "./Microsoft.Sql/preview/2020-11-01-preview/TimeZones.json", "./Microsoft.Sql/preview/2020-11-01-preview/VirtualNetworkRules.json", "./Microsoft.Sql/preview/2020-11-01-preview/WorkloadClassifiers.json", "./Microsoft.Sql/preview/2020-11-01-preview/WorkloadGroups.json", "./Microsoft.Sql/preview/2021-02-01-preview/BackupShortTermRetentionPolicies.json", "./Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json", "./Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json", "./Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json", "./Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json", "./Microsoft.Sql/preview/2021-02-01-preview/Usages.json", "./Microsoft.Sql/preview/2021-05-01-preview/LongTermRetentionManagedInstanceBackups.json", "./Microsoft.Sql/preview/2021-05-01-preview/RestorableDroppedManagedDatabases.json", "./Microsoft.Sql/preview/2021-05-01-preview/ServerConnectionPolicies.json", "./Microsoft.Sql/preview/2021-11-01-preview/DistributedAvailabilityGroups.json", "./Microsoft.Sql/preview/2021-11-01-preview/ServerTrustCertificates.json", "./Microsoft.Sql/preview/2021-11-01-preview/EndpointCertificates.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSensitivityLabels.json", "./Microsoft.Sql/preview/2020-11-01-preview/SensitivityLabels.json", "./Microsoft.Sql/preview/2021-11-01-preview/BlobAuditing.json", "./Microsoft.Sql/preview/2021-11-01-preview/DatabaseAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2021-11-01-preview/ServerAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2021-11-01-preview/ManagedServerDnsAliases.json", "./Microsoft.Sql/preview/2022-02-01-preview/ManagedDatabaseAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2022-02-01-preview/ManagedInstanceAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2022-05-01-preview/ManagedDatabaseMoveOperations.json", "./Microsoft.Sql/preview/2022-05-01-preview/ManagedInstanceDtcs.json", "./Microsoft.Sql/preview/2022-05-01-preview/SynapseLinkWorkspaces.json", "./Microsoft.Sql/preview/2022-05-01-preview/VirtualClusters.json", "./Microsoft.Sql/preview/2022-05-01-preview/InstanceFailoverGroups.json", "./Microsoft.Sql/preview/2022-05-01-preview/ManagedDatabaseRestoreDetails.json", "./Microsoft.Sql/preview/2022-08-01-preview/DatabaseEncryptionProtectorRevalidate.json", "./Microsoft.Sql/preview/2022-08-01-preview/DatabaseEncryptionProtectorRevert.json", "./Microsoft.Sql/preview/2023-02-01-preview/Databases.json", "./Microsoft.Sql/preview/2022-08-01-preview/ElasticPools.json", "./Microsoft.Sql/preview/2022-08-01-preview/ManagedDatabases.json", "./Microsoft.Sql/preview/2022-08-01-preview/ManagedInstances.json", "./Microsoft.Sql/preview/2022-08-01-preview/ManagedLedgerDigestUploads.json", "./Microsoft.Sql/preview/2022-08-01-preview/RecoverableDatabases.json", "./Microsoft.Sql/preview/2022-08-01-preview/RestorableDroppedDatabases.json", "./Microsoft.Sql/preview/2022-08-01-preview/ServerConfigurationOptions.json", "./Microsoft.Sql/preview/2022-08-01-preview/StartStopManagedInstanceSchedules.json", "./Microsoft.Sql/preview/2022-08-01-preview/TransparentDataEncryptions.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseOperations.json", "./Microsoft.Sql/preview/2022-11-01-preview/IPv6FirewallRules.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentBaseline.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentExecuteScan.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentRuleBaseline.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentScanResult.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentsSettings.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentBaselines.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentExecuteScan.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentRuleBaselines.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentScanResult.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentsSettings.json", "./Microsoft.Sql/preview/2023-05-01-preview/FailoverGroups.json", "./Microsoft.Sql/preview/2023-05-01-preview/InstancePools.json", "./Microsoft.Sql/preview/2023-05-01-preview/LongTermRetentionBackups.json", "./Microsoft.Sql/preview/2023-05-01-preview/LongTermRetentionPolicies.json", "./Microsoft.Sql/preview/2023-05-01-preview/Servers.json", "./Microsoft.Sql/preview/2023-05-01-preview/ReplicationLinks.json"], "name": "package-composite-v5"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["Microsoft.Sql/stable/2014-04-01/dataMasking.json", "Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json", "Microsoft.Sql/stable/2014-04-01/metrics.json", "Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json", "Microsoft.Sql/stable/2014-04-01/serviceObjectives.json", "Microsoft.Sql/stable/2014-04-01-legacy/sql.core_legacy.json", "Microsoft.Sql/stable/2014-04-01-legacy/usages_legacy.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseAdvisors.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseAutomaticTuning.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseColumns.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseRecommendedActions.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseSchemas.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseTables.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssesmentRuleBaselines.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/DatabaseVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2020-11-01-preview/DataWarehouseUserActivities.json", "./Microsoft.Sql/preview/2020-11-01-preview/DeletedServers.json", "./Microsoft.Sql/preview/2020-11-01-preview/ElasticPoolOperations.json", "./Microsoft.Sql/preview/2020-11-01-preview/EncryptionProtectors.json", "./Microsoft.Sql/preview/2020-11-01-preview/FirewallRules.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobAgents.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobCredentials.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobExecutions.json", "./Microsoft.Sql/preview/2023-05-01-preview/JobPrivateEndpoints.json", "./Microsoft.Sql/preview/2020-11-01-preview/Jobs.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobStepExecutions.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobSteps.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobTargetExecutions.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobTargetGroups.json", "./Microsoft.Sql/preview/2020-11-01-preview/JobVersions.json", "./Microsoft.Sql/preview/2020-11-01-preview/LocationCapabilities.json", "./Microsoft.Sql/preview/2020-11-01-preview/MaintenanceWindowOptions.json", "./Microsoft.Sql/preview/2020-11-01-preview/MaintenanceWindows.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedBackupShortTermRetentionPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseColumns.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseQueries.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSchemas.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSecurityEvents.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseTables.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseTransparentDataEncryption.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentRuleBaselines.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAdministrators.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceAzureADOnlyAuthentications.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceEncryptionProtectors.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceKeys.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceLongTermRetentionPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceOperations.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstancePrivateEndpointConnections.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstancePrivateLinkResources.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceTdeCertificates.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedInstanceVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedServerSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/Operations.json", "./Microsoft.Sql/preview/2022-08-01-preview/PrivateEndpointConnections.json", "./Microsoft.Sql/preview/2020-11-01-preview/PrivateLinkResources.json", "./Microsoft.Sql/preview/2020-11-01-preview/RecoverableManagedDatabases.json", "./Microsoft.Sql/preview/2020-11-01-preview/RestorePoints.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAdvisors.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAutomaticTuning.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADAdministrators.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerAzureADOnlyAuthentications.json", "./Microsoft.Sql/preview/2022-02-01-preview/ServerDevOpsAudit.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerDnsAliases.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerKeys.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerOperations.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerSecurityAlertPolicies.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerTrustGroups.json", "./Microsoft.Sql/preview/2020-11-01-preview/ServerVulnerabilityAssessments.json", "./Microsoft.Sql/preview/2020-11-01-preview/SqlAgent.json", "./Microsoft.Sql/preview/2020-11-01-preview/SubscriptionUsages.json", "./Microsoft.Sql/preview/2020-11-01-preview/SyncAgents.json", "./Microsoft.Sql/preview/2020-11-01-preview/SyncGroups.json", "./Microsoft.Sql/preview/2020-11-01-preview/SyncMembers.json", "./Microsoft.Sql/preview/2020-11-01-preview/TdeCertificates.json", "./Microsoft.Sql/preview/2020-11-01-preview/TimeZones.json", "./Microsoft.Sql/preview/2020-11-01-preview/VirtualNetworkRules.json", "./Microsoft.Sql/preview/2020-11-01-preview/WorkloadClassifiers.json", "./Microsoft.Sql/preview/2020-11-01-preview/WorkloadGroups.json", "./Microsoft.Sql/preview/2021-02-01-preview/BackupShortTermRetentionPolicies.json", "./Microsoft.Sql/preview/2021-02-01-preview/DatabaseExtensions.json", "./Microsoft.Sql/preview/2021-02-01-preview/DatabaseUsages.json", "./Microsoft.Sql/preview/2021-02-01-preview/LedgerDigestUploads.json", "./Microsoft.Sql/preview/2021-02-01-preview/OutboundFirewallRules.json", "./Microsoft.Sql/preview/2021-02-01-preview/Usages.json", "./Microsoft.Sql/preview/2021-05-01-preview/LongTermRetentionManagedInstanceBackups.json", "./Microsoft.Sql/preview/2021-05-01-preview/RestorableDroppedManagedDatabases.json", "./Microsoft.Sql/preview/2021-05-01-preview/ServerConnectionPolicies.json", "./Microsoft.Sql/preview/2021-11-01-preview/DistributedAvailabilityGroups.json", "./Microsoft.Sql/preview/2021-11-01-preview/ServerTrustCertificates.json", "./Microsoft.Sql/preview/2021-11-01-preview/EndpointCertificates.json", "./Microsoft.Sql/preview/2020-11-01-preview/ManagedDatabaseSensitivityLabels.json", "./Microsoft.Sql/preview/2020-11-01-preview/SensitivityLabels.json", "./Microsoft.Sql/preview/2021-11-01-preview/BlobAuditing.json", "./Microsoft.Sql/preview/2021-11-01-preview/DatabaseAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2021-11-01-preview/ServerAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2021-11-01-preview/ManagedServerDnsAliases.json", "./Microsoft.Sql/preview/2022-02-01-preview/ManagedDatabaseAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2022-02-01-preview/ManagedInstanceAdvancedThreatProtectionSettings.json", "./Microsoft.Sql/preview/2022-05-01-preview/ManagedDatabaseMoveOperations.json", "./Microsoft.Sql/preview/2022-05-01-preview/ManagedInstanceDtcs.json", "./Microsoft.Sql/preview/2022-05-01-preview/SynapseLinkWorkspaces.json", "./Microsoft.Sql/preview/2022-05-01-preview/VirtualClusters.json", "./Microsoft.Sql/preview/2022-05-01-preview/InstanceFailoverGroups.json", "./Microsoft.Sql/preview/2022-05-01-preview/ManagedDatabaseRestoreDetails.json", "./Microsoft.Sql/preview/2022-08-01-preview/DatabaseEncryptionProtectorRevalidate.json", "./Microsoft.Sql/preview/2022-08-01-preview/DatabaseEncryptionProtectorRevert.json", "./Microsoft.Sql/preview/2023-02-01-preview/Databases.json", "./Microsoft.Sql/preview/2022-08-01-preview/ElasticPools.json", "./Microsoft.Sql/preview/2022-08-01-preview/ManagedDatabases.json", "./Microsoft.Sql/preview/2022-08-01-preview/ManagedLedgerDigestUploads.json", "./Microsoft.Sql/preview/2022-08-01-preview/RecoverableDatabases.json", "./Microsoft.Sql/preview/2022-08-01-preview/RestorableDroppedDatabases.json", "./Microsoft.Sql/preview/2022-08-01-preview/ServerConfigurationOptions.json", "./Microsoft.Sql/preview/2022-08-01-preview/StartStopManagedInstanceSchedules.json", "./Microsoft.Sql/preview/2022-08-01-preview/TransparentDataEncryptions.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseOperations.json", "./Microsoft.Sql/preview/2022-11-01-preview/IPv6FirewallRules.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentBaseline.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentExecuteScan.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentRuleBaseline.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentScanResult.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2022-11-01-preview/SqlVulnerabilityAssessmentsSettings.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentBaselines.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentExecuteScan.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentRuleBaselines.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentScanResult.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentScans.json", "./Microsoft.Sql/preview/2022-11-01-preview/DatabaseSqlVulnerabilityAssessmentsSettings.json", "./Microsoft.Sql/preview/2023-05-01-preview/FailoverGroups.json", "./Microsoft.Sql/preview/2023-05-01-preview/InstancePools.json", "./Microsoft.Sql/preview/2023-05-01-preview/LongTermRetentionBackups.json", "./Microsoft.Sql/preview/2023-05-01-preview/LongTermRetentionPolicies.json", "./Microsoft.Sql/preview/2023-05-01-preview/ManagedInstances.json", "./Microsoft.Sql/preview/2023-05-01-preview/Servers.json", "./Microsoft.Sql/preview/2023-05-01-preview/ReplicationLinks.json"], "name": "package-composite-v5"} \ No newline at end of file diff --git a/swagger-specs/storage/data-plane/Microsoft.FileStorage/api-set.json b/swagger-specs/storage/data-plane/Microsoft.FileStorage/api-set.json index cc2a71837..5a6e94e19 100644 --- a/swagger-specs/storage/data-plane/Microsoft.FileStorage/api-set.json +++ b/swagger-specs/storage/data-plane/Microsoft.FileStorage/api-set.json @@ -1 +1 @@ -{"addition_input_file_paths": [], "input_files": ["stable/2024-08-04/file.json"], "name": "package-2024-08"} \ No newline at end of file +{"addition_input_file_paths": [], "input_files": ["stable/2024-11-04/file.json"], "name": "package-2024-11"} \ No newline at end of file diff --git a/swagger-specs/storage/data-plane/Microsoft.FileStorage/stable/2024-08-04/file.json b/swagger-specs/storage/data-plane/Microsoft.FileStorage/stable/2024-11-04/file.json similarity index 97% rename from swagger-specs/storage/data-plane/Microsoft.FileStorage/stable/2024-08-04/file.json rename to swagger-specs/storage/data-plane/Microsoft.FileStorage/stable/2024-11-04/file.json index c97aad28c..0d38c7a3e 100644 --- a/swagger-specs/storage/data-plane/Microsoft.FileStorage/stable/2024-08-04/file.json +++ b/swagger-specs/storage/data-plane/Microsoft.FileStorage/stable/2024-11-04/file.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "Azure File Storage", - "version": "2024-08-04", + "version": "2024-11-04", "x-ms-code-generation-settings": { "header": "MIT", "strictSpecAdherence": false @@ -52,6 +52,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -96,6 +99,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -179,6 +185,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -261,6 +270,18 @@ }, { "$ref": "#/parameters/EnableSnapshotVirtualDirectoryAccess" + }, + { + "$ref": "#/parameters/PaidBurstingEnabled" + }, + { + "$ref": "#/parameters/PaidBurstingMaxBandwidthMibps" + }, + { + "$ref": "#/parameters/PaidBurstingMaxIops" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -325,6 +346,9 @@ }, { "$ref": "#/parameters/LeaseIdOptional" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -473,6 +497,23 @@ "x-ms-client-name": "EnableSnapshotVirtualDirectoryAccess", "description": "Version 2023-08-03 and newer. Specifies whether the snapshot virtual directory should be accessible at the root of share mount point when NFS is enabled. This header is only returned for shares, not for snapshots.", "type": "boolean" + }, + "x-ms-share-paid-bursting-enabled": { + "x-ms-client-name": "PaidBurstingEnabled", + "description": "Optional. Boolean. Default if not specified is false. This property enables paid bursting.", + "type": "boolean" + }, + "x-ms-share-paid-bursting-max-iops": { + "x-ms-client-name": "PaidBurstingMaxIops", + "description": "Optional. Integer. Default if not specified is the maximum IOPS the file share can support. Current maximum for a file share is 102,400 IOPS.", + "type": "integer", + "format": "int64" + }, + "x-ms-share-paid-bursting-max-bandwidth-mibps": { + "x-ms-client-name": "PaidBurstingMaxBandwidthMibps", + "description": "Optional. Integer. Default if not specified is the maximum throughput the file share can support. Current maximum for a file share is 10,340 MiB/sec.", + "type": "integer", + "format": "int64" } } }, @@ -511,6 +552,9 @@ }, { "$ref": "#/parameters/LeaseIdOptional" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -589,6 +633,9 @@ }, { "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -709,6 +756,9 @@ }, { "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -827,6 +877,9 @@ }, { "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -947,6 +1000,9 @@ }, { "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1070,6 +1126,9 @@ }, { "$ref": "#/parameters/ShareSnapshot" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1189,6 +1248,9 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1343,6 +1405,9 @@ { "$ref": "#/parameters/FilePermissionKeyRequired" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/Timeout" }, @@ -1445,6 +1510,18 @@ }, { "$ref": "#/parameters/EnableSnapshotVirtualDirectoryAccess" + }, + { + "$ref": "#/parameters/PaidBurstingEnabled" + }, + { + "$ref": "#/parameters/PaidBurstingMaxBandwidthMibps" + }, + { + "$ref": "#/parameters/PaidBurstingMaxIops" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1536,6 +1613,9 @@ }, { "$ref": "#/parameters/LeaseIdOptional" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1624,6 +1704,9 @@ }, { "$ref": "#/parameters/LeaseIdOptional" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1691,6 +1774,9 @@ }, { "$ref": "#/parameters/LeaseIdOptional" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1779,6 +1865,9 @@ }, { "$ref": "#/parameters/LeaseIdOptional" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1876,6 +1965,9 @@ }, { "$ref": "#/parameters/DeletedShareVersion" + }, + { + "$ref": "#/parameters/FileRequestIntent" } ], "responses": { @@ -1973,6 +2065,9 @@ { "$ref": "#/parameters/FilePermission" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/FilePermissionKey" }, @@ -2283,6 +2378,9 @@ { "$ref": "#/parameters/FilePermission" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/FilePermissionKey" }, @@ -2871,6 +2969,9 @@ { "$ref": "#/parameters/FilePermission" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/FilePermissionKey" }, @@ -3053,6 +3154,9 @@ { "$ref": "#/parameters/FilePermission" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/FilePermissionKey" }, @@ -3972,6 +4076,9 @@ { "$ref": "#/parameters/FilePermission" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/FilePermissionKey" }, @@ -5540,6 +5647,9 @@ { "$ref": "#/parameters/FilePermission" }, + { + "$ref": "#/parameters/FilePermissionFormat" + }, { "$ref": "#/parameters/FilePermissionKey" }, @@ -6445,6 +6555,17 @@ }, "EnableSnapshotVirtualDirectoryAccess": { "type": "boolean" + }, + "PaidBurstingEnabled": { + "type": "boolean" + }, + "PaidBurstingMaxIops": { + "type": "integer", + "format": "int64" + }, + "PaidBurstingMaxBandwidthMibps": { + "type": "integer", + "format": "int64" } } }, @@ -6543,6 +6664,17 @@ "permission": { "type": "string", "description": "The permission in the Security Descriptor Definition Language (SDDL)." + }, + "format": { + "type": "string", + "enum": [ + "Sddl", + "Binary" + ], + "x-ms-enum": { + "name": "FilePermissionFormat", + "modelAsString": false + } } } }, @@ -6590,7 +6722,7 @@ "required": true, "type": "string", "enum": [ - "2024-08-04" + "2024-11-04" ] }, "ClientRequestId": { @@ -6981,6 +7113,23 @@ "type": "string", "x-ms-parameter-location": "method" }, + "FilePermissionFormat": { + "name": "x-ms-file-permission-format", + "x-ms-client-name": "FilePermissionFormat", + "description": "Optional. Available for version 2023-06-01 and later. Specifies the format in which the permission is returned. Acceptable values are SDDL or binary. If x-ms-file-permission-format is unspecified or explicitly set to SDDL, the permission is returned in SDDL format. If x-ms-file-permission-format is explicitly set to binary, the permission is returned as a base64 string representing the binary encoding of the permission", + "in": "header", + "x-ms-parameter-location": "method", + "required": false, + "type": "string", + "enum": [ + "Sddl", + "Binary" + ], + "x-ms-enum": { + "name": "FilePermissionFormat", + "modelAsString": false + } + }, "FilePermissionKeyRequired": { "name": "x-ms-file-permission-key", "x-ms-client-name": "FilePermissionKey", @@ -7190,6 +7339,35 @@ }, "x-ms-parameter-location": "method" }, + "PaidBurstingEnabled": { + "name": "x-ms-share-paid-bursting-enabled", + "x-ms-client-name": "paidBurstingEnabled", + "description": "Optional. Boolean. Default if not specified is false. This property enables paid bursting.", + "in": "header", + "x-ms-parameter-location": "method", + "required": false, + "type": "boolean" + }, + "PaidBurstingMaxBandwidthMibps": { + "name": "x-ms-share-paid-bursting-max-bandwidth-mibps", + "x-ms-client-name": "PaidBurstingMaxBandwidthMibps", + "description": "Optional. Integer. Default if not specified is the maximum throughput the file share can support. Current maximum for a file share is 10,340 MiB/sec.", + "in": "header", + "x-ms-parameter-location": "method", + "required": false, + "type": "integer", + "format": "int64" + }, + "PaidBurstingMaxIops": { + "name": "x-ms-share-paid-bursting-max-iops", + "x-ms-client-name": "paidBurstingMaxIops", + "description": "Optional. Integer. Default if not specified is the maximum IOPS the file share can support. Current maximum for a file share is 102,400 IOPS.", + "in": "header", + "x-ms-parameter-location": "method", + "required": false, + "type": "integer", + "format": "int64" + }, "Prefix": { "name": "prefix", "in": "query", diff --git a/swagger-specs/web/resource-manager/Microsoft.Web/stable/2023-12-01/CommonDefinitions.json b/swagger-specs/web/resource-manager/Microsoft.Web/stable/2023-12-01/CommonDefinitions.json index b5b40169d..8cfe5e38e 100644 --- a/swagger-specs/web/resource-manager/Microsoft.Web/stable/2023-12-01/CommonDefinitions.json +++ b/swagger-specs/web/resource-manager/Microsoft.Web/stable/2023-12-01/CommonDefinitions.json @@ -3673,7 +3673,8 @@ "description": "Either a function group or a function name is required. For additional information see https://aka.ms/flexconsumption/alwaysready." }, "instanceCount": { - "type": "number", + "type": "integer", + "format": "int32", "description": "Sets the number of 'Always Ready' instances for a given function group or a specific function. For additional information see https://aka.ms/flexconsumption/alwaysready." } } @@ -3691,11 +3692,13 @@ }, "maximumInstanceCount": { "description": "The maximum number of instances for the function app.", - "type": "number" + "type": "integer", + "format": "int32" }, "instanceMemoryMB": { "description": "Set the amount of memory allocated to each instance of the function app in MB. CPU and network bandwidth are allocated proportionally.", - "type": "number" + "type": "integer", + "format": "int32" }, "triggers": { "type": "object", @@ -3706,7 +3709,8 @@ "description": "Scale and concurrency settings for the HTTP trigger.", "properties": { "perInstanceConcurrency": { - "type": "number", + "type": "integer", + "format": "int32", "description": "The maximum number of concurrent HTTP trigger invocations per instance." } } diff --git a/vendor/github.com/guptarohit/asciigraph/CHANGELOG.md b/vendor/github.com/guptarohit/asciigraph/CHANGELOG.md index 9b538b929..cbe0e4744 100644 --- a/vendor/github.com/guptarohit/asciigraph/CHANGELOG.md +++ b/vendor/github.com/guptarohit/asciigraph/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. +## [0.7.2] - 2024-08-12 + +### Fixed + +- Unintended modification of input data (#55) + ## [0.7.1] - 2024-03-30 ### Added @@ -87,6 +93,7 @@ All notable changes to this project will be documented in this file. - Prevent panics when data is flat. (#8) - Prevent BADPREC issue when maximum and minimum values in a series are 0. (#10) +[0.7.2]: https://github.com/guptarohit/asciigraph/releases/tag/v0.7.2 [0.7.1]: https://github.com/guptarohit/asciigraph/releases/tag/v0.7.1 [0.7.0]: https://github.com/guptarohit/asciigraph/releases/tag/v0.7.0 [0.6.0]: https://github.com/guptarohit/asciigraph/releases/tag/v0.6.0 diff --git a/vendor/github.com/guptarohit/asciigraph/asciigraph.go b/vendor/github.com/guptarohit/asciigraph/asciigraph.go index 6200eb9f5..c0fac1545 100644 --- a/vendor/github.com/guptarohit/asciigraph/asciigraph.go +++ b/vendor/github.com/guptarohit/asciigraph/asciigraph.go @@ -20,6 +20,14 @@ func PlotMany(data [][]float64, options ...Option) string { Precision: 2, }, options) + // Create a deep copy of the input data + dataCopy := make([][]float64, len(data)) + for i, series := range data { + dataCopy[i] = make([]float64, len(series)) + copy(dataCopy[i], series) + } + data = dataCopy + lenMax := 0 for i := range data { if l := len(data[i]); l > lenMax { diff --git a/vendor/modules.txt b/vendor/modules.txt index b84101c9e..fe1d77bfe 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -237,7 +237,7 @@ github.com/google/uuid # github.com/gorilla/mux v1.8.0 ## explicit; go 1.12 github.com/gorilla/mux -# github.com/guptarohit/asciigraph v0.7.1 +# github.com/guptarohit/asciigraph v0.7.2 ## explicit; go 1.11 github.com/guptarohit/asciigraph # github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542