From 90386dcc3ec6e56f0432b3a78a8c7b44e2651bfc Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Tue, 20 May 2025 14:28:24 -0700
Subject: [PATCH 01/11] Baseline commit from 2024-11-18-preview for
2025-05-01-preview
---
.../preview/2025-05-01-preview/advisor.json | 1901 +++++++++++++++++
.../2025-05-01-preview/assessments.json | 514 +++++
.../examples/CreateConfiguration.json | 61 +
.../examples/CreateSuppression.json | 34 +
.../examples/DeleteAssessment.json | 13 +
.../examples/DeleteSuppression.json | 11 +
.../examples/EmptyResponse.json | 11 +
.../examples/GenerateRecommendations.json | 14 +
.../examples/GetAdvisorScoreDetail.json | 155 ++
.../examples/GetAssessment.json | 36 +
.../examples/GetRecommendationDetail.json | 70 +
.../GetRecommendationMetadataEntity.json | 41 +
.../examples/GetSuppressionDetail.json | 30 +
.../examples/ListAdvisorScore.json | 351 +++
.../examples/ListAssessmentTypes.json | 21 +
.../examples/ListAssessments.json | 41 +
.../examples/ListConfigurations.json | 42 +
.../examples/ListRecommendationMetadata.json | 85 +
.../examples/ListRecommendations.json | 142 ++
.../examples/ListSuppressions.json | 35 +
.../examples/ListWorkloads.json | 20 +
.../examples/OperationsList.json | 21 +
.../2025-05-01-preview/examples/Predict.json | 46 +
.../examples/PutAssessment.json | 70 +
.../examples/ResiliencyReviewsGet.json | 33 +
.../examples/ResiliencyReviewsList.json | 58 +
.../TriageRecommendationsApprove.json | 13 +
.../examples/TriageRecommendationsGet.json | 41 +
.../examples/TriageRecommendationsList.json | 103 +
.../examples/TriageRecommendationsReject.json | 16 +
.../examples/TriageRecommendationsReset.json | 13 +
.../examples/TriageResourcesGet.json | 35 +
.../examples/TriageResourcesList.json | 61 +
.../examples/UpdateTrackedRecommendation.json | 93 +
.../2025-05-01-preview/resiliencyReviews.json | 913 ++++++++
35 files changed, 5144 insertions(+)
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
new file mode 100644
index 000000000000..2db84c9de893
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -0,0 +1,1901 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-18-preview",
+ "title": "AdvisorManagementClient",
+ "description": "REST APIs for Azure Advisor"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/providers/Microsoft.Advisor/metadata/{name}": {
+ "get": {
+ "tags": [
+ "Metadata"
+ ],
+ "summary": "Gets the metadata entity.",
+ "operationId": "RecommendationMetadata_Get",
+ "parameters": [
+ {
+ "name": "name",
+ "in": "path",
+ "description": "Name of metadata entity.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully retrieved metadata entities",
+ "schema": {
+ "$ref": "#/definitions/MetadataEntity"
+ }
+ },
+ "404": {
+ "description": "Client sent unknown metadata name",
+ "schema": {
+ "$ref": "#/definitions/ARMErrorResponseBody"
+ },
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "GetMetadata": {
+ "$ref": "./examples/GetRecommendationMetadataEntity.json"
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Advisor/metadata": {
+ "get": {
+ "tags": [
+ "Metadata"
+ ],
+ "summary": "Gets the list of metadata entities.",
+ "operationId": "RecommendationMetadata_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully retrieved metadata entities",
+ "schema": {
+ "$ref": "#/definitions/MetadataEntityListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "GetMetadata": {
+ "$ref": "./examples/ListRecommendationMetadata.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations": {
+ "get": {
+ "tags": [
+ "Configurations"
+ ],
+ "summary": "Retrieve Azure Advisor configurations.",
+ "description": "Retrieve Azure Advisor configurations and also retrieve configurations of contained resource groups.",
+ "operationId": "Configurations_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully retrieved zero or more configurations.",
+ "schema": {
+ "$ref": "#/definitions/ConfigurationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "GetConfigurations": {
+ "$ref": "./examples/ListConfigurations.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations/{configurationName}": {
+ "put": {
+ "tags": [
+ "Configurations"
+ ],
+ "summary": "Create/Overwrite Azure Advisor configuration.",
+ "description": "Create/Overwrite Azure Advisor configuration and also delete all configurations of contained resource groups.",
+ "operationId": "Configurations_CreateInSubscription",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "configContract",
+ "in": "body",
+ "description": "The Azure Advisor configuration data structure.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConfigData"
+ }
+ },
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "name": "configurationName",
+ "in": "path",
+ "description": "Advisor configuration name. Value must be 'default'",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "ConfigurationName",
+ "modelAsString": true
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully created/overwrote configuration.",
+ "schema": {
+ "$ref": "#/definitions/ConfigData"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "PutConfigurations": {
+ "$ref": "./examples/CreateConfiguration.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations": {
+ "get": {
+ "tags": [
+ "Configurations"
+ ],
+ "summary": "Retrieve Azure Advisor configurations.",
+ "operationId": "Configurations_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroup",
+ "in": "path",
+ "description": "The name of the Azure resource group.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully retrieved zero or more configurations.",
+ "schema": {
+ "$ref": "#/definitions/ConfigurationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "GetConfigurations": {
+ "$ref": "./examples/ListConfigurations.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations/{configurationName}": {
+ "put": {
+ "tags": [
+ "Configurations"
+ ],
+ "summary": "Create/Overwrite Azure Advisor configuration.",
+ "operationId": "Configurations_CreateInResourceGroup",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "configContract",
+ "in": "body",
+ "description": "The Azure Advisor configuration data structure.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConfigData"
+ }
+ },
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "name": "configurationName",
+ "in": "path",
+ "description": "Advisor configuration name. Value must be 'default'",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "ConfigurationName",
+ "modelAsString": true
+ }
+ },
+ {
+ "name": "resourceGroup",
+ "in": "path",
+ "description": "The name of the Azure resource group.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully created/overwrote configuration.",
+ "schema": {
+ "$ref": "#/definitions/ConfigData"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "PutConfigurations": {
+ "$ref": "./examples/CreateConfiguration.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations": {
+ "post": {
+ "tags": [
+ "GenerateRecommendations"
+ ],
+ "description": "Initiates the recommendation generation or computation process for a subscription. This operation is asynchronous. The generated recommendations are stored in a cache in the Advisor service.",
+ "operationId": "Recommendations_Generate",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted. Recommendation generation has been accepted.",
+ "headers": {
+ "Location": {
+ "description": "The URL where the status of the asynchronous operation can be checked.",
+ "type": "string"
+ },
+ "Retry-After": {
+ "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GenerateRecommendations": {
+ "$ref": "./examples/GenerateRecommendations.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations/{operationId}": {
+ "get": {
+ "tags": [
+ "GenerateRecommendations"
+ ],
+ "description": "Retrieves the status of the recommendation computation or generation process. Invoke this API after calling the generation recommendation. The URI of this API is returned in the Location field of the response header.",
+ "operationId": "Recommendations_GetGenerateStatus",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "name": "operationId",
+ "in": "path",
+ "description": "The operation ID, which can be found from the Location field in the generate recommendation response header.",
+ "required": true,
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted. Recommendation generation is in progress."
+ },
+ "204": {
+ "description": "NoContent. Recommendation generation has been completed."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetGenerateStatus": {
+ "$ref": "./examples/EmptyResponse.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/recommendations": {
+ "get": {
+ "tags": [
+ "GetRecommendations"
+ ],
+ "description": "Obtains cached recommendations for a subscription. The recommendations are generated or computed by invoking generateRecommendations.",
+ "operationId": "Recommendations_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply to the recommendations.
Filter can be applied to properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '[Category](#category)'] with operators ['eq', 'and', 'or'].
Example:
- $filter=Category eq 'Cost' and ResourceGroup eq 'MyResourceGroup'",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "description": "The number of recommendations per page if a paged version of this API is being used.",
+ "required": false,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "name": "$skipToken",
+ "in": "query",
+ "description": "The page-continuation token to use with a paged version of this API.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully obtained cached recommendations.",
+ "schema": {
+ "$ref": "#/definitions/ResourceRecommendationBaseListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListRecommendations": {
+ "$ref": "./examples/ListRecommendations.json"
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Advisor/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "Lists all the available Advisor REST API operations.",
+ "operationId": "Operations_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully retrieved operation list.",
+ "schema": {
+ "$ref": "#/definitions/OperationEntityListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "OperationsList": {
+ "$ref": "./examples/OperationsList.json"
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}": {
+ "get": {
+ "tags": [
+ "GetRecommendations"
+ ],
+ "description": "Obtains details of a cached recommendation.",
+ "operationId": "Recommendations_Get",
+ "parameters": [
+ {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recommendationId",
+ "in": "path",
+ "description": "The recommendation ID.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully got recommendation detail.",
+ "schema": {
+ "$ref": "#/definitions/ResourceRecommendationBase"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetRecommendationDetail": {
+ "$ref": "./examples/GetRecommendationDetail.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "PatchRecommendations"
+ ],
+ "description": "Update the tracked properties of a Recommendation.",
+ "operationId": "Recommendations_Patch",
+ "parameters": [
+ {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource Manager identifier of the resource to which the tracked recommendation applies.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recommendationId",
+ "in": "path",
+ "description": "The RecommendationId ID.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "trackedProperties",
+ "in": "body",
+ "description": "The properties to update on the recommendation.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TrackedRecommendationPropertiesPayload"
+ }
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully updated recommendation status.",
+ "schema": {
+ "$ref": "#/definitions/ResourceRecommendationBase"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "UpdateTrackedRecommendation": {
+ "$ref": "./examples/UpdateTrackedRecommendation.json"
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}": {
+ "get": {
+ "tags": [
+ "Suppressions"
+ ],
+ "description": "Obtains the details of a suppression.",
+ "operationId": "Suppressions_Get",
+ "parameters": [
+ {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recommendationId",
+ "in": "path",
+ "description": "The recommendation ID.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "description": "The name of the suppression.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully got suppression detail.",
+ "schema": {
+ "$ref": "#/definitions/SuppressionContract"
+ }
+ },
+ "404": {
+ "description": "Suppression name is not specified or Suppression Id not found.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ },
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetSuppressionDetail": {
+ "$ref": "./examples/GetSuppressionDetail.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Suppressions"
+ ],
+ "description": "Enables the snoozed or dismissed attribute of a recommendation. The snoozed or dismissed attribute is referred to as a suppression. Use this API to create or update the snoozed or dismissed status of a recommendation.",
+ "operationId": "Suppressions_Create",
+ "parameters": [
+ {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recommendationId",
+ "in": "path",
+ "description": "The recommendation ID.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "description": "The name of the suppression.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "suppressionContract",
+ "in": "body",
+ "description": "The snoozed or dismissed attribute; for example, the snooze duration.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SuppressionContract"
+ }
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully created suppression.",
+ "schema": {
+ "$ref": "#/definitions/SuppressionContract"
+ }
+ },
+ "404": {
+ "description": "Recommendation to be suppressed is not found.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ },
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "CreateSuppression": {
+ "$ref": "./examples/CreateSuppression.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Suppressions"
+ ],
+ "description": "Enables the activation of a snoozed or dismissed recommendation. The snoozed or dismissed attribute of a recommendation is referred to as a suppression.",
+ "operationId": "Suppressions_Delete",
+ "parameters": [
+ {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recommendationId",
+ "in": "path",
+ "description": "The recommendation ID.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "description": "The name of the suppression.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent. The recommendation has been activated."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "DeleteSuppression": {
+ "$ref": "./examples/DeleteSuppression.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/suppressions": {
+ "get": {
+ "tags": [
+ "Suppressions"
+ ],
+ "description": "Retrieves the list of snoozed or dismissed suppressions for a subscription. The snoozed or dismissed attribute of a recommendation is referred to as a suppression.",
+ "operationId": "Suppressions_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "description": "The number of suppressions per page if a paged version of this API is being used.",
+ "required": false,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "name": "$skipToken",
+ "in": "query",
+ "description": "The page-continuation token to use with a paged version of this API.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully got all suppressions in a subscription.",
+ "schema": {
+ "$ref": "#/definitions/SuppressionContractListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListSuppressions": {
+ "$ref": "./examples/ListSuppressions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/predict": {
+ "post": {
+ "tags": [
+ "Prediction"
+ ],
+ "summary": "Predicts a recommendation.",
+ "operationId": "Predict",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "name": "predictionRequest",
+ "in": "body",
+ "description": "Parameters for predict recommendation.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PredictionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully obtained prediction.",
+ "schema": {
+ "$ref": "#/definitions/PredictionResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Predict": {
+ "$ref": "./examples/Predict.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/advisorScore": {
+ "get": {
+ "tags": [
+ "AdvisorScore"
+ ],
+ "description": "Gets the list of advisor scores.",
+ "operationId": "AdvisorScores_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/AdvisorScoreResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "ListAdvisorScore": {
+ "$ref": "./examples/ListAdvisorScore.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/advisorScore/{name}": {
+ "get": {
+ "tags": [
+ "AdvisorScore"
+ ],
+ "description": "Gets the advisor score.",
+ "operationId": "AdvisorScores_Get",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "description": "The scope of Advisor score entity.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/advisorScoreEntity"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetAdvisorScoreDetail": {
+ "$ref": "./examples/GetAdvisorScoreDetail.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "MetadataEntityListResult": {
+ "description": "The list of metadata entities",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of metadata entities.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetadataEntity"
+ }
+ },
+ "nextLink": {
+ "description": "The link used to get the next page of metadata.",
+ "type": "string"
+ }
+ }
+ },
+ "MetadataEntity": {
+ "description": "The metadata entity contract.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The resource Id of the metadata entity.",
+ "type": "string"
+ },
+ "type": {
+ "description": "The type of the metadata entity.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the metadata entity.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/MetadataEntityProperties",
+ "description": "The metadata entity properties.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "MetadataEntityProperties": {
+ "description": "The metadata entity properties",
+ "type": "object",
+ "properties": {
+ "displayName": {
+ "description": "The display name.",
+ "type": "string"
+ },
+ "dependsOn": {
+ "description": "The list of keys on which this entity depends on.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "applicableScenarios": {
+ "description": "The list of scenarios applicable to this metadata entity.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "Alerts"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Scenario",
+ "modelAsString": true
+ }
+ }
+ },
+ "supportedValues": {
+ "description": "The list of supported values.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetadataSupportedValueDetail"
+ }
+ }
+ }
+ },
+ "MetadataSupportedValueDetail": {
+ "description": "The metadata supported value detail.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The id.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name.",
+ "type": "string"
+ }
+ }
+ },
+ "ConfigurationListResult": {
+ "description": "The list of Advisor configurations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of configurations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConfigData"
+ }
+ },
+ "nextLink": {
+ "description": "The link used to get the next page of configurations.",
+ "type": "string"
+ }
+ }
+ },
+ "ConfigData": {
+ "description": "The Advisor configuration data structure.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ConfigDataProperties",
+ "description": "The Advisor configuration data structure.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ConfigDataProperties": {
+ "description": "Configuration data properties",
+ "type": "object",
+ "properties": {
+ "exclude": {
+ "description": "Exclude the resource from Advisor evaluations. Valid values: False (default) or True.",
+ "type": "boolean"
+ },
+ "lowCpuThreshold": {
+ "description": "Minimum percentage threshold for Advisor low CPU utilization evaluation. Valid only for subscriptions. Valid values: 5 (default), 10, 15 or 20.",
+ "enum": [
+ "5",
+ "10",
+ "15",
+ "20"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CpuThreshold",
+ "modelAsString": true
+ }
+ },
+ "duration": {
+ "description": "Minimum duration for Advisor low CPU utilization evaluation. Valid only for subscriptions. Valid values: 7 (default), 14, 21, 30, 60 or 90.",
+ "enum": [
+ "7",
+ "14",
+ "21",
+ "30",
+ "60",
+ "90"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Duration",
+ "modelAsString": true
+ }
+ },
+ "digests": {
+ "description": "Advisor digest configuration. Valid only for subscriptions",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DigestConfig"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "DigestConfig": {
+ "description": "Advisor Digest configuration entity",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of digest configuration. Value is case-insensitive and must be unique within a subscription.",
+ "type": "string"
+ },
+ "actionGroupResourceId": {
+ "description": "Action group resource id used by digest.",
+ "type": "string"
+ },
+ "frequency": {
+ "format": "int32",
+ "description": "Frequency that digest will be triggered, in days. Value must be between 7 and 30 days inclusive.",
+ "type": "integer"
+ },
+ "categories": {
+ "description": "Categories to send digest for. If categories are not provided, then digest will be sent for all categories.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "HighAvailability",
+ "Security",
+ "Performance",
+ "Cost",
+ "OperationalExcellence"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Category",
+ "modelAsString": true
+ }
+ }
+ },
+ "language": {
+ "description": "Language for digest content body. Value must be ISO 639-1 code for one of Azure portal supported languages. Otherwise, it will be converted into one. Default value is English (en).",
+ "type": "string"
+ },
+ "state": {
+ "description": "State of digest configuration.",
+ "enum": [
+ "Active",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DigestConfigState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ArmErrorResponse": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ARMErrorResponseBody"
+ }
+ }
+ },
+ "ARMErrorResponseBody": {
+ "description": "ARM error response body.",
+ "type": "object",
+ "properties": {
+ "message": {
+ "description": "Gets or sets the string that describes the error in detail and provides debugging information.",
+ "type": "string"
+ },
+ "code": {
+ "description": "Gets or sets the string that can be used to programmatically identify the error.",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceRecommendationBaseListResult": {
+ "description": "The list of Advisor recommendations.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of recommendations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of recommendations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceRecommendationBase"
+ }
+ }
+ }
+ },
+ "ResourceRecommendationBase": {
+ "description": "Advisor Recommendation.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RecommendationProperties",
+ "description": "The properties of the recommendation.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RecommendationProperties": {
+ "description": "The properties of the recommendation.",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "The category of the recommendation.",
+ "enum": [
+ "HighAvailability",
+ "Security",
+ "Performance",
+ "Cost",
+ "OperationalExcellence"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "category",
+ "modelAsString": true
+ }
+ },
+ "impact": {
+ "description": "The business impact of the recommendation.",
+ "enum": [
+ "High",
+ "Medium",
+ "Low"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "impact",
+ "modelAsString": true
+ }
+ },
+ "impactedField": {
+ "description": "The resource type identified by Advisor.",
+ "type": "string"
+ },
+ "impactedValue": {
+ "description": "The resource identified by Advisor.",
+ "type": "string"
+ },
+ "lastUpdated": {
+ "format": "date-time",
+ "description": "The most recent time that Advisor checked the validity of the recommendation.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "The recommendation metadata.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ },
+ "recommendationTypeId": {
+ "description": "The recommendation-type GUID.",
+ "type": "string"
+ },
+ "risk": {
+ "description": "The potential risk of not implementing the recommendation.",
+ "enum": [
+ "Error",
+ "Warning",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "risk",
+ "modelAsString": true
+ }
+ },
+ "shortDescription": {
+ "$ref": "#/definitions/ShortDescription",
+ "description": "A summary of the recommendation."
+ },
+ "suppressionIds": {
+ "description": "The list of snoozed and dismissed rules for the recommendation.",
+ "type": "array",
+ "items": {
+ "format": "uuid",
+ "type": "string"
+ }
+ },
+ "extendedProperties": {
+ "description": "Extended properties",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "resourceMetadata": {
+ "$ref": "#/definitions/ResourceMetadata",
+ "description": "Metadata of resource that was assessed"
+ },
+ "description": {
+ "description": "The detailed description of recommendation.",
+ "type": "string"
+ },
+ "label": {
+ "description": "The label of recommendation.",
+ "type": "string"
+ },
+ "learnMoreLink": {
+ "description": "The link to learn more about recommendation and generation logic.",
+ "type": "string"
+ },
+ "potentialBenefits": {
+ "description": "The potential benefit of implementing recommendation.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of recommended actions to implement recommendation.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ },
+ "x-ms-identifiers": []
+ },
+ "remediation": {
+ "description": "The automated way to apply recommendation.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ },
+ "exposedMetadataProperties": {
+ "description": "The recommendation metadata properties exposed to customer to provide additional information.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ },
+ "tracked": {
+ "type": "boolean",
+ "description": "If the Recommendation has Tracking enabled."
+ },
+ "trackedProperties": {
+ "$ref": "#/definitions/TrackedRecommendationProperties",
+ "description": "The properties of a tracked recommendation."
+ },
+ "review": {
+ "description": "The Review that this Recommendation belongs to.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ARM Resource Id of the Review",
+ "type": "string"
+ },
+ "name": {
+ "description": "The Name of the Review",
+ "type": "string"
+ }
+ }
+ },
+ "resourceWorkload": {
+ "description": "The Workload that this Resource belongs to.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The Id of the Workload",
+ "type": "string"
+ },
+ "name": {
+ "description": "The Name of the Workload",
+ "type": "string"
+ }
+ }
+ },
+ "sourceSystem": {
+ "description": "The Source System that this Recommendation originated from.",
+ "type": "string"
+ },
+ "notes": {
+ "description": "Additional notes for the Recommendation",
+ "type": "string"
+ }
+ }
+ },
+ "ShortDescription": {
+ "description": "A summary of the recommendation.",
+ "type": "object",
+ "properties": {
+ "problem": {
+ "description": "The issue or opportunity identified by the recommendation and proposed solution.",
+ "type": "string"
+ },
+ "solution": {
+ "description": "The issue or opportunity identified by the recommendation and proposed solution.",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceMetadata": {
+ "description": "Recommendation resource metadata",
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "description": "Azure resource Id of the assessed resource",
+ "type": "string"
+ },
+ "source": {
+ "description": "Source from which recommendation is generated",
+ "type": "string"
+ },
+ "action": {
+ "description": "The action to view resource.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "object"
+ }
+ },
+ "singular": {
+ "description": "The singular user friendly name of resource type. eg: virtual machine",
+ "type": "string"
+ },
+ "plural": {
+ "description": "The plural user friendly name of resource type. eg: virtual machines",
+ "type": "string"
+ }
+ }
+ },
+ "OperationEntityListResult": {
+ "description": "The list of Advisor operations.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationEntity"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "OperationEntity": {
+ "description": "The operation supported by Advisor.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}.",
+ "type": "string"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplayInfo",
+ "description": "The operation supported by Advisor."
+ }
+ }
+ },
+ "OperationDisplayInfo": {
+ "description": "The operation supported by Advisor.",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The description of the operation.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "The action that users can perform, based on their permission level.",
+ "type": "string"
+ },
+ "provider": {
+ "description": "Service provider: Microsoft Advisor.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Resource on which the operation is performed.",
+ "type": "string"
+ }
+ }
+ },
+ "SuppressionContract": {
+ "description": "The details of the snoozed or dismissed rule; for example, the duration, name, and GUID associated with the rule.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SuppressionProperties",
+ "description": "The properties of the suppression.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "SuppressionProperties": {
+ "description": "The properties of the suppression.",
+ "type": "object",
+ "properties": {
+ "suppressionId": {
+ "description": "The GUID of the suppression.",
+ "type": "string"
+ },
+ "ttl": {
+ "description": "The duration for which the suppression is valid.",
+ "type": "string"
+ },
+ "expirationTimeStamp": {
+ "readOnly": true,
+ "format": "date-time",
+ "description": "Gets or sets the expiration time stamp.",
+ "type": "string"
+ }
+ }
+ },
+ "SuppressionContractListResult": {
+ "description": "The list of Advisor suppressions.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of suppressions.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of suppressions.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SuppressionContract"
+ }
+ }
+ }
+ },
+ "PredictionRequest": {
+ "description": "Parameters for predict recommendation.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PredictionRequestProperties",
+ "description": "Request properties for prediction recommendation.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PredictionRequestProperties": {
+ "description": "Properties given for the predictor.",
+ "type": "object",
+ "properties": {
+ "predictionType": {
+ "description": "Type of the prediction.",
+ "enum": [
+ "PredictiveRightsizing"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "predictionType",
+ "modelAsString": true
+ }
+ },
+ "extendedProperties": {
+ "description": "Extended properties are arguments specific for each prediction type.",
+ "type": "object"
+ }
+ }
+ },
+ "AdvisorScoreResponse": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/advisorScoreEntity"
+ }
+ }
+ }
+ },
+ "PredictionResponse": {
+ "description": "Response used by predictions.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PredictionResponseProperties",
+ "description": "The properties of the prediction.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "PredictionResponseProperties": {
+ "description": "Properties of the prediction",
+ "type": "object",
+ "properties": {
+ "extendedProperties": {
+ "description": "Extended properties",
+ "type": "object"
+ },
+ "predictionType": {
+ "description": "Type of the prediction.",
+ "enum": [
+ "PredictiveRightsizing"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "predictionType",
+ "modelAsString": true
+ }
+ },
+ "category": {
+ "description": "The category of the recommendation.",
+ "enum": [
+ "HighAvailability",
+ "Security",
+ "Performance",
+ "Cost",
+ "OperationalExcellence"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "category",
+ "modelAsString": true
+ }
+ },
+ "impact": {
+ "description": "The business impact of the recommendation.",
+ "enum": [
+ "High",
+ "Medium",
+ "Low"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "impact",
+ "modelAsString": true
+ }
+ },
+ "impactedField": {
+ "description": "The resource type identified by Advisor.",
+ "type": "string"
+ },
+ "lastUpdated": {
+ "format": "date-time",
+ "description": "The most recent time that Advisor checked the validity of the recommendation.",
+ "type": "string"
+ },
+ "shortDescription": {
+ "$ref": "#/definitions/ShortDescription",
+ "description": "A summary of the recommendation."
+ }
+ }
+ },
+ "scoreEntity": {
+ "description": "The details of Advisor Score",
+ "type": "object",
+ "properties": {
+ "date": {
+ "description": "The date score was calculated.",
+ "type": "string"
+ },
+ "score": {
+ "description": "The percentage score.",
+ "type": "number"
+ },
+ "consumptionUnits": {
+ "description": "The consumption units for the score.",
+ "type": "number"
+ },
+ "impactedResourceCount": {
+ "description": "The number of impacted resources.",
+ "type": "number"
+ },
+ "potentialScoreIncrease": {
+ "description": "The potential percentage increase in overall score at subscription level once all recommendations in this scope are implemented.",
+ "type": "number"
+ },
+ "categoryCount": {
+ "description": "The count of impacted categories.",
+ "type": "number",
+ "readOnly": true
+ }
+ }
+ },
+ "timeSeriesEntity": {
+ "description": "The historic data at different aggregation levels.",
+ "type": "array",
+ "items": {
+ "description": "The data from different aggregation levels.",
+ "type": "object",
+ "properties": {
+ "aggregationLevel": {
+ "description": "The aggregation level of the score. ",
+ "type": "string",
+ "enum": [
+ "week",
+ "day",
+ "month"
+ ],
+ "x-ms-enum": {
+ "name": "aggregated",
+ "modelAsString": true
+ }
+ },
+ "scoreHistory": {
+ "description": "The past score data",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/scoreEntity"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "x-ms-identifiers": []
+ },
+ "advisorScoreEntity": {
+ "description": "The details of Advisor score for a single category.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "The Advisor score data.",
+ "type": "object",
+ "properties": {
+ "lastRefreshedScore": {
+ "description": "The details of latest available score.",
+ "$ref": "#/definitions/scoreEntity"
+ },
+ "timeSeries": {
+ "description": "The historic Advisor score data.",
+ "$ref": "#/definitions/timeSeriesEntity"
+ }
+ }
+ }
+ }
+ },
+ "TrackedRecommendationPropertiesPayload": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "trackedProperties": {
+ "$ref": "#/definitions/TrackedRecommendationProperties"
+ }
+ }
+ }
+ }
+ },
+ "TrackedRecommendationProperties": {
+ "description": "The tracked properties of a Recommendation",
+ "type": "object",
+ "properties": {
+ "state": {
+ "description": "The state of the Recommendation",
+ "enum": [
+ "Approved",
+ "Rejected",
+ "Pending",
+ "InProgress",
+ "Postponed",
+ "Dismissed",
+ "Completed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "state",
+ "modelAsString": true
+ }
+ },
+ "postponedTime": {
+ "description": "The time the Recommendation was postponed until.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "reason": {
+ "description": "The reason the state of the Recommendation was changed.",
+ "enum": [
+ "ExcessiveInvestment",
+ "TooComplex",
+ "AlternativeSolution",
+ "Incompatible",
+ "Unclear",
+ "RiskAccepted"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "reason",
+ "modelAsString": true
+ }
+ },
+ "priority": {
+ "description": "The Priority of the Recommendation.",
+ "enum": [
+ "Critical",
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "priority",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "subscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "description": "The Azure subscription ID.",
+ "required": true,
+ "type": "string"
+ },
+ "apiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "description": "The version of the API to be used with the client request.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
new file mode 100644
index 000000000000..679d66a6e741
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
@@ -0,0 +1,514 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-18-preview",
+ "title": "AdvisorManagementClient",
+ "description": "REST APIs for Azure Advisor Assessments"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/assessments/{assessmentName}": {
+ "delete": {
+ "tags": [
+ "assessments"
+ ],
+ "summary": "Delete existing assessment.",
+ "description": "Delete a existing Azure Advisor assessment.",
+ "operationId": "Assessments_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/assessmentNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "DeleteAssessment": {
+ "$ref": "./examples/DeleteAssessment.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "assessments"
+ ],
+ "summary": "Get existing assessment.",
+ "description": "Get a existing Azure Advisor assessment.",
+ "operationId": "Assessments_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/assessmentNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/AssessmentResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetAssessment": {
+ "$ref": "./examples/GetAssessment.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "assessments"
+ ],
+ "summary": "Create/Overwrite Azure Advisor assessment.",
+ "description": "Create or Overwrite Azure Advisor assessment resource.",
+ "operationId": "Assessments_Put",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "assessmentContract",
+ "in": "body",
+ "description": "The Azure Advisor assessment data structure.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AssessmentResult"
+ }
+ },
+ {
+ "$ref": "#/parameters/assessmentNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully created/update assessment.",
+ "schema": {
+ "$ref": "#/definitions/AssessmentResult"
+ }
+ },
+ "201": {
+ "description": "Successfully created/update assessment.",
+ "schema": {
+ "$ref": "#/definitions/AssessmentResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "PutAssessment": {
+ "$ref": "./examples/PutAssessment.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/assessments": {
+ "get": {
+ "tags": [
+ "assessments"
+ ],
+ "summary": "Get list of assessment.",
+ "description": "Get list of Azure Advisor assessment.",
+ "operationId": "Assessments_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/$top"
+ },
+ {
+ "$ref": "#/parameters/$skiptoken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/AssessmentListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListAssessments": {
+ "$ref": "./examples/ListAssessments.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/assessmentTypes": {
+ "get": {
+ "tags": [
+ "assessmentTypes"
+ ],
+ "summary": "Get assessment types list.",
+ "description": "Get list of Azure Advisor assessment types.",
+ "operationId": "AssessmentTypes_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/AssessmentTypeListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "GetAssessmentTypes": {
+ "$ref": "./examples/ListAssessmentTypes.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/workloads": {
+ "get": {
+ "tags": [
+ "workloads"
+ ],
+ "summary": "Get Workloads list.",
+ "description": "Get list of Workloads.",
+ "operationId": "Workloads_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/WorkloadListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "GetWorkloads": {
+ "$ref": "./examples/ListWorkloads.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AssessmentResult": {
+ "description": "The Advisor assessment result data structure.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Assessment Id",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "description": "Assessment Name",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "description": "Resource Type",
+ "readOnly": true
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/systemData",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/AssessmentResultProperties",
+ "description": "The Advisor assessment result properties structure.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "AssessmentResultProperties": {
+ "description": "Assessment result properties.",
+ "type": "object",
+ "properties": {
+ "workloadId": {
+ "type": "string",
+ "description": "Workload Id."
+ },
+ "workloadName": {
+ "type": "string",
+ "description": "Workload Name.",
+ "readOnly": true
+ },
+ "assessmentId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Assessment Id."
+ },
+ "description": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Assessment Type Description."
+ },
+ "typeId": {
+ "type": "string",
+ "description": "Assessment Type Id."
+ },
+ "type": {
+ "type": "string",
+ "description": "Assessment Type.",
+ "readOnly": true
+ },
+ "score": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true,
+ "description": "Assessment Score."
+ },
+ "state": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Assessment State."
+ },
+ "typeVersion": {
+ "type": "string",
+ "description": "Assessment Type Version.",
+ "readOnly": true
+ },
+ "locale": {
+ "type": "string",
+ "description": "Assessment Type Locale."
+ }
+ }
+ },
+ "AssessmentListResult": {
+ "description": "The Advisor assessment list result data structure.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Assessments.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AssessmentResult"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of Advisor assessments, if there are any."
+ }
+ }
+ },
+ "AssessmentTypeListResult": {
+ "description": "The Advisor assessment type list result data structure.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Assessments Types.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AssessmentTypeResult"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of Advisor assessments types, if there are any."
+ }
+ }
+ },
+ "AssessmentTypeResult": {
+ "description": "The Advisor assessment type result data structure.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Assessment Type Id"
+ },
+ "title": {
+ "type": "string",
+ "description": "Assessment Type Title"
+ },
+ "description": {
+ "type": "string",
+ "description": "Assessment Type Description"
+ },
+ "locale": {
+ "type": "string",
+ "description": "Assessment Type Locale"
+ },
+ "version": {
+ "type": "string",
+ "description": "Assessment Type Version"
+ }
+ }
+ },
+ "WorkloadListResult": {
+ "description": "The Workload list result data structure.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Workload.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WorkloadResult"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of Workloads, if there are any."
+ }
+ }
+ },
+ "WorkloadResult": {
+ "description": "The Workload result data structure.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Workload Id"
+ },
+ "name": {
+ "type": "string",
+ "description": "Workload Name"
+ },
+ "subscriptionId": {
+ "type": "string",
+ "description": "Subscription Id"
+ },
+ "subscriptionName": {
+ "type": "string",
+ "description": "Subscription Name"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "assessmentNameParameter": {
+ "name": "assessmentName",
+ "in": "path",
+ "description": "Advisor assessment name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-0-9a-zA-Z_]{1,63}$",
+ "x-ms-parameter-location": "method"
+ },
+ "$top": {
+ "name": "$top",
+ "in": "query",
+ "description": "Limit the result to the specified number of rows.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "$skiptoken": {
+ "name": "$skiptoken",
+ "in": "query",
+ "description": "The page-continuation token to use with a paged version of this API.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json
new file mode 100644
index 000000000000..8a5b85801855
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "subscriptionId",
+ "resourceGroup": "resourceGroup",
+ "configurationName": "default",
+ "configContract": {
+ "properties": {
+ "lowCpuThreshold": "5",
+ "duration": "7",
+ "exclude": true,
+ "digests": [
+ {
+ "name": "digestConfigName",
+ "actionGroupResourceId": "/subscriptions/58c3f667-7a62-4bfd-a658-846493e9a493/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName",
+ "frequency": 30,
+ "categories": [
+ "HighAvailability",
+ "Security",
+ "Performance",
+ "Cost",
+ "OperationalExcellence"
+ ],
+ "language": "en",
+ "state": "Active"
+ }
+ ]
+ }
+ },
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/58c3f667-7a62-4bfd-a658-846493e9a493/resourceGroups/resourceGroup/providers/Microsoft.Advisor/configurations/default",
+ "type": "Microsoft.Advisor/configurations",
+ "name": "default",
+ "properties": {
+ "lowCpuThreshold": "5",
+ "duration": "7",
+ "exclude": true,
+ "digests": [
+ {
+ "name": "digestConfigName",
+ "actionGroupResourceId": "/subscriptions/58c3f667-7a62-4bfd-a658-846493e9a493/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName",
+ "frequency": 30,
+ "categories": [
+ "HighAvailability",
+ "Security",
+ "Performance",
+ "Cost",
+ "OperationalExcellence"
+ ],
+ "language": "en",
+ "state": "Active"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json
new file mode 100644
index 000000000000..9aaef751e137
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "resourceUri": "resourceUri",
+ "recommendationId": "recommendationId",
+ "name": "suppressionName1",
+ "suppressionContract": {
+ "properties": {
+ "ttl": "07:00:00:00"
+ }
+ },
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7/suppressions/HardcodedSuppressionName",
+ "name": "suppressionName1",
+ "type": "Microsoft.Advisor/suppressions",
+ "properties": {
+ "suppressionId": "suppressionId",
+ "ttl": "07:00:00:00"
+ }
+ }
+ },
+ "404": {
+ "body": {
+ "error": {
+ "code": "NotFound",
+ "message": "Recommendation to be suppressed is not found. Subscription Id:{0} Recommendation Id:{1}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json
new file mode 100644
index 000000000000..fde4bbb6a99d
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "assessmentName": "assessment1",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {
+ "description": "The Assessment is not found or has been deleted already."
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json
new file mode 100644
index 000000000000..75686ce03411
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json
@@ -0,0 +1,11 @@
+{
+ "parameters": {
+ "resourceUri": "resourceUri",
+ "recommendationId": "recommendationId",
+ "name": "suppressionName1",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json
new file mode 100644
index 000000000000..75cf518f7df2
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json
@@ -0,0 +1,11 @@
+{
+ "parameters": {
+ "subscriptionId": "subscriptionId",
+ "operationId": "123e4567-e89b-12d3-a456-426614174000",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json
new file mode 100644
index 000000000000..a4b16fa9bccc
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "subscriptionId": "subscriptionId",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Microsoft.Advisor/generateRecommendations/recGUID?api-version=2024-11-18-preview",
+ "Retry-After": "60"
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json
new file mode 100644
index 000000000000..af90ad2b2204
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json
@@ -0,0 +1,155 @@
+{
+ "parameters": {
+ "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "name": "Cost",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/Cost",
+ "name": "Cost",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 1
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-24T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-23T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-22T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-21T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-20T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-19T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "month",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-05-30T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-04-30T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "week",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-21T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-14T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-07T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-05-31T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-05-24T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json
new file mode 100644
index 000000000000..7b1ac50639e8
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "assessmentName": "assessment1",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/2f2edd23-bded-4c8d-bdef-1f32a9b83f84/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "MCWAR1",
+ "type": "Microsoft.Advisor/assessments",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-03T04:41:33.937Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-03T04:41:33.937Z"
+ },
+ "properties": {
+ "workloadId": "f72b7134-800f-4f1b-a5bd-691e2140c7d5",
+ "workloadName": "Workload1",
+ "assessmentId": "fa5cb863-6ed4-4b6b-8c72-06f847cac885",
+ "description": "Evaluate your mission critical workloads by assessing the technical design",
+ "typeId": "23513bdb-e8a2-4f0b-8b6b-191ee1f52d34",
+ "type": "Mission Critical Well-Architected Review",
+ "typeVersion": "20221031192816.497",
+ "locale": "en-us",
+ "score": 60,
+ "state": "InProgress"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json
new file mode 100644
index 000000000000..e7eb3da0351f
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "recommendationId": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/availabilitysets",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ },
+ "type": "Microsoft.Advisor/recommendations"
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json
new file mode 100644
index 000000000000..427b098a36df
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "name": "types",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "providers/Microsoft.Advisor/metadata/recommendationType",
+ "name": "recommendationType",
+ "type": "Microsoft.Advisor/metadata",
+ "properties": {
+ "displayName": "Recommendation Type",
+ "dependsOn": [
+ "category",
+ "impact"
+ ],
+ "applicableScenarios": [
+ "Alerts"
+ ],
+ "supportedValues": [
+ {
+ "id": "6a2b1e70-bd4c-4163-86de-5243d7ac05ee",
+ "displayName": "Upgrade your SKU or add more instances to ensure fault tolerance"
+ },
+ {
+ "id": "da6630fb-4286-4996-92a3-a43f5f26dd34",
+ "displayName": "Delete ExpressRoute circuits in the provider status of Not Provisioned"
+ }
+ ]
+ }
+ }
+ },
+ "404": {
+ "body": {
+ "code": "NotFound",
+ "message": "Unknown metadata name"
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json
new file mode 100644
index 000000000000..7923458cf93f
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "resourceUri": "resourceUri",
+ "recommendationId": "recommendationId",
+ "name": "suppressionName1",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/recommendationId/suppressions/suppressionName1",
+ "name": "suppressionName1",
+ "type": "Microsoft.Advisor/suppressions",
+ "properties": {
+ "suppressionId": "suppressionId1",
+ "ttl": "7.00:00:00",
+ "expirationTimeStamp": "2020-10-25T22:24:43.3216408Z"
+ }
+ }
+ },
+ "404": {
+ "body": {
+ "error": {
+ "code": "NotFound",
+ "message": "Suppression name is not specified or Suppression Id not found"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json
new file mode 100644
index 000000000000..0a4c309d130a
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json
@@ -0,0 +1,351 @@
+{
+ "parameters": {
+ "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/Cost",
+ "name": "Cost",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 2
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-24T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-23T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-22T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-21T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-20T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-19T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "month",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-05-30T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-04-30T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "week",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-21T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-14T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-06-07T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-05-31T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ },
+ {
+ "date": "2020-05-24T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/Performance",
+ "name": "Performance",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 2
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "month",
+ "scoreHistory": [
+ {
+ "date": "2020-05-30T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "week",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/Security",
+ "name": "Security",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 3
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "month",
+ "scoreHistory": [
+ {
+ "date": "2020-05-30T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ },
+ {
+ "aggregationLevel": "week",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/HighAvailability",
+ "name": "HighAvailability",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 2
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/OperationalExcellence",
+ "name": "OperationalExcellence",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 1
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/advisorScore/Advisor",
+ "name": "Advisor",
+ "type": "Microsoft.Advisor/advisorScore",
+ "properties": {
+ "lastRefreshedScore": {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0,
+ "categoryCount": 1
+ },
+ "timeSeries": [
+ {
+ "aggregationLevel": "day",
+ "scoreHistory": [
+ {
+ "date": "2020-06-25T00:00:00Z",
+ "score": 1,
+ "consumptionUnits": 12.24521,
+ "impactedResourceCount": 1,
+ "potentialScoreIncrease": 0
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json
new file mode 100644
index 000000000000..80752702ee29
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "23513bdb-e8a2-4f0b-8b6b-191ee1f52d34",
+ "title": "Mission Critical | Well-Architected Review",
+ "description": "Evaluate your mission critical workloads by assessing the technical design areas and overall operational effectiveness.",
+ "locale": "en-us",
+ "version": "20221031192816.497"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json
new file mode 100644
index 000000000000..5c47fa878dbe
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "assessmentName": "MCWAR1",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/2f2edd23-bded-4c8d-bdef-1f32a9b83f84/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "MCWAR1",
+ "type": "Microsoft.Advisor/assessments",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-03T04:41:33.937Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-03T04:41:33.937Z"
+ },
+ "properties": {
+ "workloadId": "f72b7134-800f-4f1b-a5bd-691e2140c7d5",
+ "workloadName": "Workload1",
+ "assessmentId": "fa5cb863-6ed4-4b6b-8c72-06f847cac885",
+ "description": "Evaluate your mission critical workloads by assessing the technical design",
+ "typeId": "23513bdb-e8a2-4f0b-8b6b-191ee1f52d34",
+ "type": "Mission Critical Well-Architected Review",
+ "typeVersion": "20221031192816.497",
+ "locale": "en-us",
+ "score": 60,
+ "state": "InProgress"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/2f2edd23-bded-4c8d-bdef-1f32a9b83f84/providers/Microsoft.Advisor/assessments?api-version=2023-07-01&$top=10&$skiptoken=skiptoken"
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json
new file mode 100644
index 000000000000..b4b0eba5d240
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "subscriptionId",
+ "resourceGroup": "resourceGroup",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Advisor/configurations/default",
+ "type": "Microsoft.Advisor/configurations",
+ "name": "default",
+ "properties": {
+ "lowCpuThreshold": "5",
+ "duration": "7",
+ "exclude": false,
+ "digests": [
+ {
+ "name": "digestConfigName",
+ "actionGroupResourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName",
+ "frequency": 30,
+ "categories": [
+ "HighAvailability",
+ "Security",
+ "Performance",
+ "Cost",
+ "OperationalExcellence"
+ ],
+ "language": "en",
+ "state": "Active"
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json
new file mode 100644
index 000000000000..3b8efa65df15
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json
@@ -0,0 +1,85 @@
+{
+ "parameters": {
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "string",
+ "value": [
+ {
+ "id": "providers/Microsoft.Advisor/metadata/recommendationType",
+ "name": "recommendationType",
+ "type": "Microsoft.Advisor/metadata",
+ "properties": {
+ "displayName": "Recommendation Type",
+ "dependsOn": [
+ "category",
+ "impact"
+ ],
+ "applicableScenarios": [
+ "Alerts"
+ ],
+ "supportedValues": [
+ {
+ "id": "6a2b1e70-bd4c-4163-86de-5243d7ac05ee",
+ "displayName": "Upgrade your SKU or add more instances to ensure fault tolerance"
+ },
+ {
+ "id": "da6630fb-4286-4996-92a3-a43f5f26dd34",
+ "displayName": "Delete ExpressRoute circuits in the provider status of Not Provisioned"
+ }
+ ]
+ }
+ },
+ {
+ "id": "providers/Microsoft.Advisor/metadata/recommendationCategory",
+ "name": "recommendationCategory",
+ "type": "Microsoft.Advisor/metadata",
+ "properties": {
+ "displayName": "Category",
+ "dependsOn": null,
+ "applicableScenarios": [
+ "Alerts"
+ ],
+ "supportedValues": [
+ {
+ "id": "Cost",
+ "displayName": "Cost"
+ },
+ {
+ "id": "Performance",
+ "displayName": "Performance"
+ }
+ ]
+ }
+ },
+ {
+ "id": "providers/Microsoft.Advisor/metadata/recommendationImpact",
+ "name": "recommendationImpact",
+ "type": "Microsoft.Advisor/metadata",
+ "properties": {
+ "displayName": "Impact",
+ "dependsOn": null,
+ "applicableScenarios": null,
+ "supportedValues": [
+ {
+ "id": "High",
+ "displayName": "High"
+ },
+ {
+ "id": "Medium",
+ "displayName": "Medium"
+ },
+ {
+ "id": "Low",
+ "displayName": "Low"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json
new file mode 100644
index 000000000000..5b3c67a5e49f
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json
@@ -0,0 +1,142 @@
+{
+ "parameters": {
+ "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "$top": 10,
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/recommendations?api-version=2024-11-18-preview&$top=10&$skiptoken=skiptoken",
+ "value": [
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/availabilitySets",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47",
+ "name": "1b266c91-3a92-4423-8aa2-ee13a6d90f47",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/virtualMachines",
+ "impactedValue": "xyz",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz",
+ "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ },
+ "singular": "Virtual machine",
+ "plural": "Virtual machines"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "Monitoring agent should be installed on your machines.",
+ "label": "Enable monitoring agent",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Protect and monitor machine",
+ "tracked": true,
+ "trackedProperties": {
+ "state": "Postponed",
+ "postponedTime": "2023-10-01T00:00:00Z",
+ "reason": "RiskAccepted",
+ "priority": "High"
+ },
+ "resourceWorkload": {
+ "id": "0560dbdb-f207-4690-b4ba-1fc0c3a0f082",
+ "name": "Critical VM Workload"
+ },
+ "review": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "Monthly WAF Review 09/23"
+ },
+ "sourceSystem": "CxObserve",
+ "notes": "This is a note"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json
new file mode 100644
index 000000000000..19b4ab45c0bc
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/microsoft.Advisor/suppressions?api-version=2024-11-18-preview&$top=3&$skiptoken=skiptoken",
+ "value": [
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47/suppressions/HardcodedSuppressionName",
+ "name": "HardcodedSuppressionName",
+ "type": "Microsoft.Advisor/suppressions",
+ "properties": {
+ "suppressionId": "58403b0e-113b-e428-d6f7-2a524380b955",
+ "ttl": "7.00:00:00",
+ "expirationTimeStamp": "2022-10-24T22:24:43.3216408Z"
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/3385b5d0-b8cc-bdcf-0e0d-b5a3d1e9b93b/suppressions/HardcodedSuppressionName",
+ "name": "HardcodedSuppressionName",
+ "type": "Microsoft.Advisor/suppressions",
+ "properties": {
+ "suppressionId": "72a23574-d49a-84d0-0a7d-fb3fe6cba16b",
+ "ttl": "7.00:00:00",
+ "expirationTimeStamp": "2022-10-25T22:24:43.3216408Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json
new file mode 100644
index 000000000000..9bb9743bed89
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "d8004ffb-de76-4bc4-b0bc-32880a031843",
+ "name": "Workload1",
+ "subscriptionId": "2f2edd23-bded-4c8d-bdef-1f32a9b83f84",
+ "subscriptionName": "Subscription1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json
new file mode 100644
index 000000000000..dfa9c3821bb5
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.Advisor/prediction",
+ "display": {
+ "provider": "Microsoft Advisor",
+ "resource": "Prediction",
+ "description": "Predicts a recommendation."
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json
new file mode 100644
index 000000000000..b598f160f8cf
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "subscriptionId": "subscriptionId",
+ "predictionRequest": {
+ "properties": {
+ "predictionType": "PredictiveRightsizing",
+ "extendedProperties": {
+ "region": "CentralUS",
+ "deploymentType": "Linux_IaaS_Software_Store",
+ "sku": "Standard_Dv4",
+ "type": "iaas",
+ "numberOfInstances": 10
+ }
+ }
+ },
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "predictionType": "PredictiveRightsizing",
+ "extendedProperties": {
+ "region": "CentralUS",
+ "deploymentType": "Linux_IaaS_Software_Store",
+ "sku": "Standard_Dv4",
+ "type": "iaas",
+ "numberOfInstances": 10,
+ "prediction": {
+ "recommendedSku": "Standard_Dv2",
+ "numberOfInstances": 8,
+ "confidence": 0.9
+ }
+ },
+ "category": "Cost",
+ "impact": "Low",
+ "impactedField": "Microsoft.Compute/virtualMachines",
+ "lastUpdated": "2022-02-14T14:47:18.436Z",
+ "shortDescription": {
+ "solution": "We recommend using 8 instances of type Standard_Dv2."
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json
new file mode 100644
index 000000000000..85925625ce37
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview",
+ "assessmentName": "assessment1",
+ "assessmentContract": {
+ "properties": {
+ "workloadId": "f72b7134-800f-4f1b-a5bd-691e2140c7d5",
+ "typeId": "23513bdb-e8a2-4f0b-8b6b-191ee1f52d34",
+ "locale": "en-us"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/2f2edd23-bded-4c8d-bdef-1f32a9b83f84/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "MCWAR1",
+ "type": "Microsoft.Advisor/assessments",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-03T04:41:33.937Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-03T04:41:33.937Z"
+ },
+ "properties": {
+ "workloadId": "f72b7134-800f-4f1b-a5bd-691e2140c7d5",
+ "workloadName": "Workload1",
+ "assessmentId": "fa5cb863-6ed4-4b6b-8c72-06f847cac885",
+ "description": "Evaluate your mission critical workloads by assessing the technical design",
+ "typeId": "23513bdb-e8a2-4f0b-8b6b-191ee1f52d34",
+ "type": "Mission Critical Well-Architected Review",
+ "typeVersion": "20221031192816.497",
+ "locale": "en-us",
+ "score": 60,
+ "state": "Inprogress"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/2f2edd23-bded-4c8d-bdef-1f32a9b83f84/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "MCWAR1",
+ "type": "Microsoft.Advisor/assessments",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-03T04:41:33.937Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-03T04:41:33.937Z"
+ },
+ "properties": {
+ "workloadId": "f72b7134-800f-4f1b-a5bd-691e2140c7d5",
+ "workloadName": "Workload1",
+ "assessmentId": "fa5cb863-6ed4-4b6b-8c72-06f847cac885",
+ "description": "Evaluate your mission critical workloads by assessing the technical design",
+ "typeId": "23513bdb-e8a2-4f0b-8b6b-191ee1f52d34",
+ "type": "Mission Critical Well-Architected Review",
+ "typeVersion": "20221031192816.497",
+ "locale": "en-us",
+ "score": 60,
+ "state": "Inprogress"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json
new file mode 100644
index 000000000000..82a8a3d20d02
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444",
+ "name": "11111111-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/ResiliencyReview",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewName": "review name xyz",
+ "workloadName": "workload name xyz",
+ "reviewStatus": "Triaged",
+ "recommendationsCount": 4,
+ "publishedAt": "2023-06-30T09:41:00Z",
+ "updatedAt": "2023-06-30T09:41:00Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json
new file mode 100644
index 000000000000..ceae342346c1
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444",
+ "name": "11111111-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/ResiliencyReview",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewName": "review name xyz",
+ "workloadName": "workload name xyz",
+ "reviewStatus": "Triaged",
+ "recommendationsCount": 4,
+ "publishedAt": "2023-06-30T09:41:00Z",
+ "updatedAt": "2023-06-30T09:41:00Z"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-555555555555",
+ "name": "11111111-1111-2222-3333-555555555555",
+ "type": "Microsoft.Advisor/ResiliencyReview",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewName": "review name abc",
+ "workloadName": "workload name abc",
+ "reviewStatus": "Triaged",
+ "recommendationsCount": 5,
+ "publishedAt": "2023-06-30T09:41:00Z",
+ "updatedAt": "2023-06-30T09:41:00Z"
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json
new file mode 100644
index 000000000000..66916ae7f242
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "recommendationId": "22222222-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json
new file mode 100644
index 000000000000..fd4f3e51b099
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "recommendationId": "22222222-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-444444444444",
+ "name": "22222222-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/TriageRecommendations",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "title": "Explore the scale-limits of each Azure resource",
+ "priority": "High",
+ "recommendationStatus": "Pending",
+ "updatedAt": "2023-06-30T10:51:00Z",
+ "rejectReason": "",
+ "appliesToSubscriptions": [
+ "00000000-1111-2222-3333-444444444444",
+ "00000000-1111-2222-3333-555555555555",
+ "00000000-1111-2222-3333-666666666666"
+ ],
+ "description": "Azure resources have scale limits. If you are planning to deploy a large number of resources, you should be aware of these limits. This recommendation provides links to the scale limits for each Azure resource.",
+ "potentialBenefits": "Avoid deployment failures due to scale limits.",
+ "notes": "This recommendation is based on the scale limits for each Azure resource. For more information, see Azure subscription and service limits, quotas, and constraints."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json
new file mode 100644
index 000000000000..eb503683329c
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json
@@ -0,0 +1,103 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-444444444444",
+ "name": "22222222-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/TriageRecommendations",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "title": "Explore the scale-limits of each Azure resource",
+ "priority": "High",
+ "recommendationStatus": "Pending",
+ "updatedAt": "2023-06-30T10:51:00Z",
+ "rejectReason": "",
+ "appliesToSubscriptions": [
+ "00000000-1111-2222-3333-444444444444",
+ "00000000-1111-2222-3333-555555555555",
+ "00000000-1111-2222-3333-666666666666"
+ ],
+ "description": "Azure resources have scale limits. If you are planning to deploy a large number of resources, you should be aware of these limits. This recommendation provides links to the scale limits for each Azure resource.",
+ "potentialBenefits": "Avoid deployment failures due to scale limits.",
+ "notes": "This recommendation is based on the scale limits for each Azure resource. For more information, see Azure subscription and service limits, quotas, and constraints."
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-555555555555",
+ "name": "22222222-1111-2222-3333-555555555555",
+ "type": "Microsoft.Advisor/TriageRecommendations",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "title": "Turn off unused resources",
+ "priority": "High",
+ "recommendationStatus": "Rejected",
+ "updatedAt": "2023-06-30T10:51:00Z",
+ "rejectReason": "Not a risk",
+ "appliesToSubscriptions": [
+ "00000000-1111-2222-3333-444444444444",
+ "00000000-1111-2222-3333-555555555555",
+ "00000000-1111-2222-3333-777777777777"
+ ],
+ "description": "Azure resources have scale limits. If you are planning to deploy a large number of resources, you should be aware of these limits. This recommendation provides links to the scale limits for each Azure resource.",
+ "potentialBenefits": "Avoid deployment failures due to scale limits.",
+ "notes": "This recommendation is based on the scale limits for each Azure resource. For more information, see Azure subscription and service limits, quotas, and constraints."
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-666666666666",
+ "name": "22222222-1111-2222-3333-666666666666",
+ "type": "Microsoft.Advisor/TriageRecommendations",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "title": "Enabled HTTPS on all web apps",
+ "priority": "High",
+ "recommendationStatus": "Approved",
+ "updatedAt": "2023-06-30T10:51:00Z",
+ "rejectReason": "",
+ "appliesToSubscriptions": [
+ "00000000-1111-2222-3333-888888888888",
+ "00000000-1111-2222-3333-555555555555",
+ "00000000-1111-2222-3333-777777777777"
+ ],
+ "description": "Azure resources have scale limits. If you are planning to deploy a large number of resources, you should be aware of these limits. This recommendation provides links to the scale limits for each Azure resource.",
+ "potentialBenefits": "Avoid deployment failures due to scale limits.",
+ "notes": "This recommendation is based on the scale limits for each Azure resource. For more information, see Azure subscription and service limits, quotas, and constraints."
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json
new file mode 100644
index 000000000000..4f9cb82f230e
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "recommendationId": "22222222-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview",
+ "recommendationRejectBody": {
+ "reasonForRejection": "NotARisk"
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json
new file mode 100644
index 000000000000..66916ae7f242
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "recommendationId": "22222222-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json
new file mode 100644
index 000000000000..0ddfdffe96a5
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444444",
+ "recommendationId": "22222222-1111-2222-3333-444444444444",
+ "recommendationResourceId": "33333333-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-444444444444/providers/Microsoft.Advisor/triageResources/33333333-1111-2222-3333-444444444444",
+ "name": "22222222-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/triageResources",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "68890cd7-36aa-0b52-3b12-d37bdd684ff4",
+ "recommendationId": "91b56499-13b1-49f8-d59c-5d269bd3a79f",
+ "subscriptionId": "5cc854d0-c65a-44b0-982e-120eabfe1027",
+ "resourceGroup": "rg-test-for-large-post",
+ "resourceType": "Cosmos DB",
+ "resourceName": "cdb-testresource-prod-wus3",
+ "resourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-advisormanage-dev-wus3/providers/Microsoft.DocumentDB/databaseAccounts/cdb-testresource-prod-wus3"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json
new file mode 100644
index 000000000000..09a6d5189b01
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "reviewId": "11111111-1111-2222-3333-444444444445",
+ "recommendationId": "22222222-1111-2222-3333-444444444444",
+ "recommendationResourceId": "33333333-1111-2222-3333-444444444444",
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-444444444444/providers/Microsoft.Advisor/triageResources/33333333-1111-2222-3333-444444444444",
+ "name": "22222222-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/triageResources",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "68890cd7-36aa-0b52-3b12-d37bdd684ff4",
+ "recommendationId": "91b56499-13b1-49f8-d59c-5d269bd3a79f",
+ "subscriptionId": "5cc854d0-c65a-44b0-982e-120eabfe1027",
+ "resourceGroup": "rg-test-for-large-post",
+ "resourceType": "Cosmos DB",
+ "resourceName": "cdb-testresource-prod-wus3",
+ "resourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-advisormanage-dev-wus3/providers/Microsoft.DocumentDB/databaseAccounts/cdb-testresource-prod-wus3"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Advisor/ResiliencyReview/11111111-1111-2222-3333-444444444444/providers/Microsoft.Advisor/TriageRecommendations/22222222-1111-2222-3333-444444444444/providers/Microsoft.Advisor/triageResources/33333333-1111-2222-3333-444444444444",
+ "name": "22222222-1111-2222-3333-444444444444",
+ "type": "Microsoft.Advisor/triageResources",
+ "systemData": {
+ "createdBy": "user-identity",
+ "createdByType": "User",
+ "createdAt": "2023-06-30T09:41:00Z",
+ "lastModifiedBy": "user-identity",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-30T09:41:00Z"
+ },
+ "properties": {
+ "reviewId": "68890cd7-36aa-0b52-3b12-111111111111",
+ "recommendationId": "91b56499-13b1-49f8-d59c-111111111111",
+ "subscriptionId": "5cc854d0-c65a-44b0-982e-120eabfe1027",
+ "resourceGroup": "rg-test-for-small-post",
+ "resourceType": "Cosmos DB",
+ "resourceName": "cdb-testresource-prod-eus3",
+ "resourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-advisormanage-dev-wus3/providers/Microsoft.DocumentDB/databaseAccounts/cdb-testresource-prod-eus3"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json
new file mode 100644
index 000000000000..e91fa00d841d
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroupName/providers/Microsoft.Compute/virtualMachines/xyz",
+ "recommendationId": "c5532a76-8605-4328-ad27-f37ae87c086c",
+ "trackedProperties": {
+ "properties": {
+ "trackedProperties": {
+ "state": "Postponed",
+ "postponedTime": "2023-10-01T00:00:00Z"
+ }
+ }
+ },
+ "api-version": "2024-11-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroupName/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/c5532a76-8605-4328-ad27-f37ae87c086c",
+ "name": "c5532a76-8605-4328-ad27-f37ae87c086c",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/virtualMachines",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroupName/providers/Microsoft.Compute/virtualMachines/xyz",
+ "source": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroupName/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/7d5f6ba5-307e-452e-b3c4-7d636f722055",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroupName/providers/Microsoft.Compute/virtualMachines/xyz"
+ }
+ },
+ "singular": "Virtual machine",
+ "plural": "Virtual machines"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/00000000-1111-2222-3333-444444444444"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": true,
+ "trackedProperties": {
+ "state": "Postponed",
+ "postponedTime": "2023-10-01T00:00:00Z",
+ "priority": "High"
+ },
+ "resourceWorkload": {
+ "id": "0560dbdb-f207-4690-b4ba-1fc0c3a0f082",
+ "name": "Critical VM Workload"
+ },
+ "review": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "Monthly WAF Review 09/23"
+ },
+ "sourceSystem": "CxObserve",
+ "notes": "This is a note"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
new file mode 100644
index 000000000000..1ccd5a8e569b
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
@@ -0,0 +1,913 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-18-preview",
+ "title": "AdvisorManagementClient",
+ "description": "REST APIs for Azure Advisor Resiliency Reviews."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews": {
+ "get": {
+ "tags": [
+ "resiliencyReviews"
+ ],
+ "summary": "Get list of resiliency reviews.",
+ "description": "Get list of Azure Advisor resiliency reviews.",
+ "operationId": "resiliencyReviews_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/topParameter"
+ },
+ {
+ "$ref": "#/parameters/skipParameter"
+ },
+ {
+ "$ref": "#/parameters/filterParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/resiliencyReviewCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListResiliencyReviews": {
+ "$ref": "./examples/ResiliencyReviewsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}": {
+ "get": {
+ "tags": [
+ "resiliencyReviews"
+ ],
+ "summary": "Get existing resiliency review.",
+ "description": "Get existing Azure Advisor resiliency review by id.",
+ "operationId": "resiliencyReviews_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/resiliencyReview"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetResiliencyReview": {
+ "$ref": "./examples/ResiliencyReviewsGet.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations": {
+ "get": {
+ "tags": [
+ "triageRecommendations"
+ ],
+ "summary": "Get list of recommendations for an existing resiliency review id.",
+ "description": "Get list of recommendations for an existing Azure Advisor Resiliency Review Id.",
+ "operationId": "triageRecommendations_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/topParameter"
+ },
+ {
+ "$ref": "#/parameters/skipParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/triageRecommendationCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListTriageRecommendations": {
+ "$ref": "./examples/TriageRecommendationsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations/{recommendationId}": {
+ "get": {
+ "tags": [
+ "triageRecommendations"
+ ],
+ "summary": "Get an existing recommendation by id for an existing resiliency review id.",
+ "description": "Get an existing recommendation by id for an existing Azure Advisor Resiliency Review Id.",
+ "operationId": "triageRecommendations_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationIdParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/triageRecommendation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetTriageRecommendation": {
+ "$ref": "./examples/TriageRecommendationsGet.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations/{recommendationId}/approve": {
+ "post": {
+ "tags": [
+ "triageRecommendations"
+ ],
+ "summary": "Approve triage recommendation by id.",
+ "description": "Approve a triage recommendation for a given id.",
+ "operationId": "triageRecommendations_ApproveTriageRecommendation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Approve a triage recommendation": {
+ "$ref": "./examples/TriageRecommendationsApprove.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations/{recommendationId}/reject": {
+ "post": {
+ "tags": [
+ "triageRecommendations"
+ ],
+ "summary": "Reject existing triage recommendation by id.",
+ "description": "Reject an existing triage recommendation for a given id.",
+ "operationId": "triageRecommendations_RejectTriageRecommendation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationRejectBodyParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Reject a triage recommendation": {
+ "$ref": "./examples/TriageRecommendationsReject.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations/{recommendationId}/reset": {
+ "post": {
+ "tags": [
+ "triageRecommendations"
+ ],
+ "summary": "Reset existing triage recommendation by id.",
+ "description": "Reset an existing triage recommendation for a given id.",
+ "operationId": "triageRecommendations_ResetTriageRecommendation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Reset a triage recommendation": {
+ "$ref": "./examples/TriageRecommendationsReset.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations/{recommendationId}/providers/Microsoft.Advisor/triageResources/{recommendationResourceId}": {
+ "get": {
+ "tags": [
+ "triageResources"
+ ],
+ "summary": "Get existing triage resource.",
+ "description": "Get a triage resource for a given review and recommendation.",
+ "operationId": "triageResources_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationResourceIdParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/triageResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "GetTriageResource": {
+ "$ref": "./examples/TriageResourcesGet.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/resiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendations/{recommendationId}/providers/Microsoft.Advisor/triageResources": {
+ "get": {
+ "tags": [
+ "triageResources"
+ ],
+ "summary": "List triage resources based on a review and recommendation.",
+ "description": "List all triage resources that belong to a review and recommendation.",
+ "operationId": "triageResources_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/reviewIdParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationIdParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/triageResourceCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListTriageResources": {
+ "$ref": "./examples/TriageResourcesList.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "resiliencyReviewCollection": {
+ "description": "Collection of Resiliency Reviews.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of resiliency reviews.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/resiliencyReview"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of Advisor resiliency reviews, if there are any."
+ }
+ }
+ },
+ "resiliencyReview": {
+ "description": "The Advisor resiliency review data structure.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "Fully qualified resource ID for the resource. E.g. \"/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/ResiliencyReviews/{reviewId}\".",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "description": "Resource name E.g. \"{guid}\".",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "description": "Resource type E.g. \"Microsoft.Advisor/resiliencyReviews\".",
+ "readOnly": true
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/systemData",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/resiliencyReviewProperties",
+ "description": "Advisor resiliency review properties.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "resiliencyReviewProperties": {
+ "description": "Resiliency review properties.",
+ "type": "object",
+ "properties": {
+ "reviewName": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Review name."
+ },
+ "workloadName": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Workload Name."
+ },
+ "reviewStatus": {
+ "readOnly": true,
+ "description": "Review status.",
+ "$ref": "#/definitions/reviewStatusName"
+ },
+ "recommendationsCount": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true,
+ "description": "Review recommendations count."
+ },
+ "publishedAt": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Review last updated timestamp."
+ },
+ "updatedAt": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Review last updated timestamp."
+ }
+ }
+ },
+ "triageRecommendationCollection": {
+ "description": "Collection of Advisor triage recommendations.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of triage recommendations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/triageRecommendation"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of triage recommendations, if there are any."
+ }
+ }
+ },
+ "triageRecommendation": {
+ "description": "Triage recommendation data structure.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "Fully qualified resource ID for the resource. E.g. \"/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/ResiliencyReviews/{reviewId}/providers/Microsoft.Advisor/triageRecommendation/{recommendationId}\".",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "description": "Resource name E.g. \"{guid}\".",
+ "readOnly": true
+ },
+ "type": {
+ "type": "string",
+ "description": "Resource type E.g. \"Microsoft.Advisor/triageRecommendation\".",
+ "readOnly": true
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/systemData",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/triageRecommendationProperties",
+ "description": "Advisor resiliency review properties.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "triageRecommendationProperties": {
+ "description": "Triage recommendation properties.",
+ "type": "object",
+ "properties": {
+ "reviewId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Review id."
+ },
+ "title": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Recommendation label."
+ },
+ "priority": {
+ "description": "Recommendation priority.",
+ "$ref": "#/definitions/priorityName"
+ },
+ "appliesToSubscriptions": {
+ "type": "array",
+ "readOnly": true,
+ "description": "List of subscription ids.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "recommendationStatus": {
+ "description": "Recommendation status.",
+ "$ref": "#/definitions/recommendationStatusName"
+ },
+ "updatedAt": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Recommendation potential benefit."
+ },
+ "rejectReason": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Recommendation rejection reason."
+ },
+ "potentialBenefits": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Recommendation potential benefit."
+ },
+ "description": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Recommendation description."
+ },
+ "notes": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Recommendation notes."
+ }
+ }
+ },
+ "triageResourceCollection": {
+ "description": "Collection of Advisor triage resources.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of triage resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/triageResource"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of triage resources, if there are any."
+ }
+ }
+ },
+ "triageResource": {
+ "description": "Triage resource data structure.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/triageResourceProperties",
+ "description": "Triage resource properties.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "triageResourceProperties": {
+ "description": "Triage resource properties.",
+ "type": "object",
+ "properties": {
+ "reviewId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Unique identifier for the review resource this triageResource belongs to."
+ },
+ "recommendationId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Unique identifier for the recommendation resource this triageResource belongs to."
+ },
+ "subscriptionId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Unique identifier for the subscription resource this triageResource belongs to."
+ },
+ "resourceGroup": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Name of the resource group this triageResource belongs to."
+ },
+ "resourceType": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Type of resource this triageResource corresponds to e.g. \"Cosmos DB\"."
+ },
+ "resourceId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Full Azure resource id path of the resource this triageResource corresponds to.",
+ "format": "arm-id"
+ },
+ "resourceName": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Name of the resource this triageResource corresponds to."
+ }
+ }
+ },
+ "priorityName": {
+ "description": "Recommendation priority name enum.",
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "High",
+ "Medium",
+ "Low"
+ ],
+ "x-ms-enum": {
+ "name": "priorityName",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "High",
+ "description": "High"
+ },
+ {
+ "value": "Medium",
+ "description": "Medium"
+ },
+ {
+ "value": "Low",
+ "description": "Low"
+ }
+ ]
+ }
+ },
+ "recommendationStatusName": {
+ "description": "Recommendation status name enum.",
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "Approved",
+ "Rejected",
+ "Pending"
+ ],
+ "x-ms-enum": {
+ "name": "recommendationStatusName",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Approved",
+ "description": "Approved"
+ },
+ {
+ "value": "Rejected",
+ "description": "Rejected"
+ },
+ {
+ "value": "Pending",
+ "description": "Pending"
+ }
+ ]
+ }
+ },
+ "reviewStatusName": {
+ "description": "Review status string, returns the Reviews by the given status (e.g. 'New', 'Triaged', 'Completed').",
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "New",
+ "InProgress",
+ "Triaged",
+ "Completed"
+ ],
+ "x-ms-enum": {
+ "name": "reviewStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "New",
+ "description": "New"
+ },
+ {
+ "value": "InProgress",
+ "description": "In Progress"
+ },
+ {
+ "value": "Triaged",
+ "description": "Triaged"
+ },
+ {
+ "value": "Completed",
+ "description": "Completed"
+ }
+ ]
+ }
+ },
+ "recommendationRejectBody": {
+ "description": "Recommendation reject body.",
+ "type": "object",
+ "properties": {
+ "reasonForRejection": {
+ "description": "Reason for rejecting recommendation.",
+ "$ref": "#/definitions/reasonForRejectionName"
+ }
+ }
+ },
+ "reasonForRejectionName": {
+ "description": "Reason for rejecting recommendation name enum.",
+ "type": "string",
+ "enum": [
+ "NotARisk",
+ "RiskAccepted"
+ ],
+ "x-ms-enum": {
+ "name": "reasonForRejectionName",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "NotARisk",
+ "description": "Not A Risk"
+ },
+ {
+ "value": "RiskAccepted",
+ "description": "Risk Accepted"
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "reviewIdParameter": {
+ "name": "reviewId",
+ "in": "path",
+ "description": "Existing review id. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "recommendationIdParameter": {
+ "name": "recommendationId",
+ "in": "path",
+ "description": "Existing triage recommendation id. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "recommendationResourceIdParameter": {
+ "name": "recommendationResourceId",
+ "in": "path",
+ "description": "Existing recommendation triage resource associated with a triage recommendation. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "recommendationRejectBodyParameter": {
+ "name": "recommendationRejectBody",
+ "in": "body",
+ "description": "JSON object that contains reason for rejecting triage recommendation.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/recommendationRejectBody"
+ }
+ },
+ "topParameter": {
+ "name": "$top",
+ "in": "query",
+ "description": "The number of items to be included in the result.",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "x-ms-parameter-location": "method"
+ },
+ "skipParameter": {
+ "name": "$skip",
+ "in": "query",
+ "description": "The number of items to skip before starting to collect the result set.",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "x-ms-parameter-location": "method"
+ },
+ "filterParameter": {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply.
Filter can be applied to properties ['reviewStatus', 'reviewId'] with operators ['eq', 'and', 'or'].
Example:
- $filter=reviewStatus eq 'New'",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "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."
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
From 2d57a56cd2d2fc46f4b113b45b1398c50e7ae97c Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Tue, 20 May 2025 14:42:38 -0700
Subject: [PATCH 02/11] Updated API version and added examples
---
.../preview/2025-05-01-preview/advisor.json | 2 +-
.../2025-05-01-preview/assessments.json | 2 +-
.../examples/CreateConfiguration.json | 2 +-
.../examples/CreateSuppression.json | 2 +-
.../examples/DeleteAssessment.json | 2 +-
.../examples/DeleteSuppression.json | 2 +-
.../examples/EmptyResponse.json | 2 +-
.../examples/GenerateRecommendations.json | 4 +-
.../examples/GetAdvisorScoreDetail.json | 2 +-
.../examples/GetAssessment.json | 2 +-
.../examples/GetRecommendationDetail.json | 70 ---------
...endationDetailServiceGroupResourceUri.json | 62 ++++++++
...endationDetailSubscriptionResourceUri.json | 70 +++++++++
.../GetRecommendationMetadataEntity.json | 2 +-
.../examples/GetSuppressionDetail.json | 2 +-
.../examples/ListAdvisorScore.json | 2 +-
.../examples/ListAssessmentTypes.json | 2 +-
.../examples/ListAssessments.json | 2 +-
.../examples/ListConfigurations.json | 2 +-
.../examples/ListRecommendationMetadata.json | 2 +-
.../examples/ListRecommendations.json | 142 ------------------
...ecommendationsServiceGroupResourceUri.json | 118 +++++++++++++++
...ecommendationsSubscriptionResourceUri.json | 142 ++++++++++++++++++
.../examples/ListSuppressions.json | 4 +-
.../examples/ListWorkloads.json | 2 +-
.../examples/OperationsList.json | 2 +-
.../2025-05-01-preview/examples/Predict.json | 2 +-
.../examples/PutAssessment.json | 2 +-
.../examples/ResiliencyReviewsGet.json | 2 +-
.../examples/ResiliencyReviewsList.json | 2 +-
.../TriageRecommendationsApprove.json | 2 +-
.../examples/TriageRecommendationsGet.json | 2 +-
.../examples/TriageRecommendationsList.json | 2 +-
.../examples/TriageRecommendationsReject.json | 2 +-
.../examples/TriageRecommendationsReset.json | 2 +-
.../examples/TriageResourcesGet.json | 2 +-
.../examples/TriageResourcesList.json | 2 +-
.../examples/UpdateTrackedRecommendation.json | 2 +-
.../2025-05-01-preview/resiliencyReviews.json | 2 +-
39 files changed, 427 insertions(+), 247 deletions(-)
delete mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
delete mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json
create mode 100644 specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index 2db84c9de893..8dade8b9a460 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -1,7 +1,7 @@
{
"swagger": "2.0",
"info": {
- "version": "2024-11-18-preview",
+ "version": "2025-05-01-preview",
"title": "AdvisorManagementClient",
"description": "REST APIs for Azure Advisor"
},
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
index 679d66a6e741..f22bc51a00a9 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
@@ -1,7 +1,7 @@
{
"swagger": "2.0",
"info": {
- "version": "2024-11-18-preview",
+ "version": "2025-05-01-preview",
"title": "AdvisorManagementClient",
"description": "REST APIs for Azure Advisor Assessments"
},
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json
index 8a5b85801855..ff65bf8e104e 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateConfiguration.json
@@ -26,7 +26,7 @@
]
}
},
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json
index 9aaef751e137..175a7cc777ba 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/CreateSuppression.json
@@ -8,7 +8,7 @@
"ttl": "07:00:00:00"
}
},
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json
index fde4bbb6a99d..75e793a5ea85 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteAssessment.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"assessmentName": "assessment1",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {},
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json
index 75686ce03411..30dd1a6e5b24 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/DeleteSuppression.json
@@ -3,7 +3,7 @@
"resourceUri": "resourceUri",
"recommendationId": "recommendationId",
"name": "suppressionName1",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"204": {}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json
index 75cf518f7df2..11048045df7c 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/EmptyResponse.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "subscriptionId",
"operationId": "123e4567-e89b-12d3-a456-426614174000",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"202": {},
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json
index a4b16fa9bccc..eef253769d8b 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GenerateRecommendations.json
@@ -1,12 +1,12 @@
{
"parameters": {
"subscriptionId": "subscriptionId",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"202": {
"headers": {
- "Location": "https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Microsoft.Advisor/generateRecommendations/recGUID?api-version=2024-11-18-preview",
+ "Location": "https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Microsoft.Advisor/generateRecommendations/recGUID?api-version=2025-05-01-preview",
"Retry-After": "60"
}
}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json
index af90ad2b2204..daa3e6cb6ea1 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAdvisorScoreDetail.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
"name": "Cost",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json
index 7b1ac50639e8..8baa7ae54bc0 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetAssessment.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"assessmentName": "assessment1",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json
deleted file mode 100644
index e7eb3da0351f..000000000000
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetail.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- "parameters": {
- "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
- "recommendationId": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "api-version": "2024-11-18-preview"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "properties": {
- "category": "Security",
- "impact": "Medium",
- "impactedField": "Microsoft.Compute/availabilitysets",
- "impactedValue": "armavset",
- "lastUpdated": "2017-02-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "Monitoring agent should be installed on your machines",
- "solution": "Monitoring agent should be installed on your machines"
- },
- "remediation": {
- "additionalProperties": {
- "httpMethod": "POST",
- "uri": "uri",
- "details": "link to document"
- }
- },
- "resourceMetadata": {
- "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
- "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset"
- }
- },
- "singular": "Availability set",
- "plural": "Availability sets"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
- }
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
- },
- "type": "Microsoft.Advisor/recommendations"
- }
- }
- }
-}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
new file mode 100644
index 000000000000..a5ef431e2ad8
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "resourceUri": "providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "recommendationId": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "name": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Management/serviceGroup",
+ "impactedValue": "serviceGroupXYZ",
+ "lastUpdated": "2025-04-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ },
+ "type": "Microsoft.Advisor/recommendations"
+ }
+ }
+ }
+ }
\ No newline at end of file
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
new file mode 100644
index 000000000000..8b6ea12e24f4
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "recommendationId": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/availabilitysets",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ },
+ "type": "Microsoft.Advisor/recommendations"
+ }
+ }
+ }
+ }
\ No newline at end of file
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json
index 427b098a36df..8ee21b25a488 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationMetadataEntity.json
@@ -1,7 +1,7 @@
{
"parameters": {
"name": "types",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json
index 7923458cf93f..1926a7237116 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetSuppressionDetail.json
@@ -3,7 +3,7 @@
"resourceUri": "resourceUri",
"recommendationId": "recommendationId",
"name": "suppressionName1",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json
index 0a4c309d130a..31f552fff9db 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAdvisorScore.json
@@ -1,7 +1,7 @@
{
"parameters": {
"subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json
index 80752702ee29..57ea83f75f2c 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessmentTypes.json
@@ -1,7 +1,7 @@
{
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json
index 5c47fa878dbe..b62432be1f09 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListAssessments.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"assessmentName": "MCWAR1",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json
index b4b0eba5d240..de7a6cfd6e95 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListConfigurations.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "subscriptionId",
"resourceGroup": "resourceGroup",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json
index 3b8efa65df15..35416cd32450 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationMetadata.json
@@ -1,6 +1,6 @@
{
"parameters": {
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json
deleted file mode 100644
index 5b3c67a5e49f..000000000000
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendations.json
+++ /dev/null
@@ -1,142 +0,0 @@
-{
- "parameters": {
- "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
- "$top": 10,
- "api-version": "2024-11-18-preview"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/recommendations?api-version=2024-11-18-preview&$top=10&$skiptoken=skiptoken",
- "value": [
- {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "type": "Microsoft.Advisor/recommendations",
- "properties": {
- "category": "HighAvailability",
- "impact": "Medium",
- "impactedField": "Microsoft.Compute/availabilitySets",
- "impactedValue": "armavset",
- "lastUpdated": "2017-02-24T22:24:43.3216408Z",
- "risk": "Warning",
- "remediation": {
- "additionalProperties": {
- "httpMethod": "POST",
- "uri": "uri",
- "details": "link to document"
- }
- },
- "shortDescription": {
- "problem": "To ensure high availability add one or more virtual machines to this availability set",
- "solution": "To ensure high availability add one or more virtual machines to this availability set"
- },
- "resourceMetadata": {
- "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
- },
- "singular": "Availability set",
- "plural": "Availability sets"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
- }
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
- }
- },
- {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47",
- "name": "1b266c91-3a92-4423-8aa2-ee13a6d90f47",
- "type": "Microsoft.Advisor/recommendations",
- "properties": {
- "category": "Security",
- "impact": "Medium",
- "impactedField": "Microsoft.Compute/virtualMachines",
- "impactedValue": "xyz",
- "lastUpdated": "2017-02-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "Monitoring agent should be installed on your machines",
- "solution": "Monitoring agent should be installed on your machines"
- },
- "resourceMetadata": {
- "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz",
- "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
- },
- "singular": "Virtual machine",
- "plural": "Virtual machines"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
- }
- ],
- "description": "Monitoring agent should be installed on your machines.",
- "label": "Enable monitoring agent",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Protect and monitor machine",
- "tracked": true,
- "trackedProperties": {
- "state": "Postponed",
- "postponedTime": "2023-10-01T00:00:00Z",
- "reason": "RiskAccepted",
- "priority": "High"
- },
- "resourceWorkload": {
- "id": "0560dbdb-f207-4690-b4ba-1fc0c3a0f082",
- "name": "Critical VM Workload"
- },
- "review": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/assessments/MCWAR1",
- "name": "Monthly WAF Review 09/23"
- },
- "sourceSystem": "CxObserve",
- "notes": "This is a note"
- }
- }
- ]
- }
- }
- }
-}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json
new file mode 100644
index 000000000000..7880f506ed22
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json
@@ -0,0 +1,118 @@
+{
+ "parameters": {
+ "resourceUri": "providers/microsoft.management/serviceGroups/serviceGroupXYZ",
+ "$top": 10,
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations?api-version=2025-05-01-preview&$top=10&$skiptoken=skiptoken",
+ "value": [
+ {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "name": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Management/serviceGroup",
+ "impactedValue": "serviceGroupXYZ",
+ "lastUpdated": "2025-04-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ }
+ },
+ {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/de0eb863-583e-ac10-eb7f-cb0f6b570e2b",
+ "name": "de0eb863-583e-ac10-eb7f-cb0f6b570e2b",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Management/serviceGroup",
+ "impactedValue": "serviceGroupXYZ",
+ "lastUpdated": "2025-04-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
\ No newline at end of file
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
new file mode 100644
index 000000000000..88a1a88701c3
--- /dev/null
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
@@ -0,0 +1,142 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "$top": 10,
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/recommendations?api-version=2025-05-01-preview&$top=10&$skiptoken=skiptoken",
+ "value": [
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/availabilitySets",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47",
+ "name": "1b266c91-3a92-4423-8aa2-ee13a6d90f47",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/virtualMachines",
+ "impactedValue": "xyz",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz",
+ "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ },
+ "singular": "Virtual machine",
+ "plural": "Virtual machines"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "Monitoring agent should be installed on your machines.",
+ "label": "Enable monitoring agent",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Protect and monitor machine",
+ "tracked": true,
+ "trackedProperties": {
+ "state": "Postponed",
+ "postponedTime": "2023-10-01T00:00:00Z",
+ "reason": "RiskAccepted",
+ "priority": "High"
+ },
+ "resourceWorkload": {
+ "id": "0560dbdb-f207-4690-b4ba-1fc0c3a0f082",
+ "name": "Critical VM Workload"
+ },
+ "review": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "Monthly WAF Review 09/23"
+ },
+ "sourceSystem": "CxObserve",
+ "notes": "This is a note"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
\ No newline at end of file
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json
index 19b4ab45c0bc..1f308d5479d0 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListSuppressions.json
@@ -1,12 +1,12 @@
{
"parameters": {
"subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
"body": {
- "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/microsoft.Advisor/suppressions?api-version=2024-11-18-preview&$top=3&$skiptoken=skiptoken",
+ "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/microsoft.Advisor/suppressions?api-version=2025-05-01-preview&$top=3&$skiptoken=skiptoken",
"value": [
{
"id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47/suppressions/HardcodedSuppressionName",
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json
index 9bb9743bed89..104fa48388ba 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListWorkloads.json
@@ -1,7 +1,7 @@
{
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json
index dfa9c3821bb5..ef2082b4b0f5 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/OperationsList.json
@@ -1,6 +1,6 @@
{
"parameters": {
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json
index b598f160f8cf..202f5a669cb9 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/Predict.json
@@ -13,7 +13,7 @@
}
}
},
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json
index 85925625ce37..d6c3994e82a0 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/PutAssessment.json
@@ -1,7 +1,7 @@
{
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview",
+ "api-version": "2025-05-01-preview",
"assessmentName": "assessment1",
"assessmentContract": {
"properties": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json
index 82a8a3d20d02..5cf06d8b3e07 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsGet.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"reviewId": "11111111-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json
index ceae342346c1..4e9281977bf4 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ResiliencyReviewsList.json
@@ -1,7 +1,7 @@
{
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json
index 66916ae7f242..7895dbf679d6 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsApprove.json
@@ -3,7 +3,7 @@
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"reviewId": "11111111-1111-2222-3333-444444444444",
"recommendationId": "22222222-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json
index fd4f3e51b099..33d8f6428bb6 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsGet.json
@@ -3,7 +3,7 @@
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"reviewId": "11111111-1111-2222-3333-444444444444",
"recommendationId": "22222222-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json
index eb503683329c..ff1a4ff57014 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsList.json
@@ -2,7 +2,7 @@
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"reviewId": "11111111-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json
index 4f9cb82f230e..a1198d9782c5 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReject.json
@@ -3,7 +3,7 @@
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"reviewId": "11111111-1111-2222-3333-444444444444",
"recommendationId": "22222222-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview",
+ "api-version": "2025-05-01-preview",
"recommendationRejectBody": {
"reasonForRejection": "NotARisk"
}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json
index 66916ae7f242..7895dbf679d6 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageRecommendationsReset.json
@@ -3,7 +3,7 @@
"subscriptionId": "00000000-1111-2222-3333-444444444444",
"reviewId": "11111111-1111-2222-3333-444444444444",
"recommendationId": "22222222-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json
index 0ddfdffe96a5..030326497713 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesGet.json
@@ -4,7 +4,7 @@
"reviewId": "11111111-1111-2222-3333-444444444444",
"recommendationId": "22222222-1111-2222-3333-444444444444",
"recommendationResourceId": "33333333-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json
index 09a6d5189b01..dd5ca8c445cf 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/TriageResourcesList.json
@@ -4,7 +4,7 @@
"reviewId": "11111111-1111-2222-3333-444444444445",
"recommendationId": "22222222-1111-2222-3333-444444444444",
"recommendationResourceId": "33333333-1111-2222-3333-444444444444",
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json
index e91fa00d841d..510dc6ad60a0 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/UpdateTrackedRecommendation.json
@@ -10,7 +10,7 @@
}
}
},
- "api-version": "2024-11-18-preview"
+ "api-version": "2025-05-01-preview"
},
"responses": {
"200": {
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
index 1ccd5a8e569b..e7eef414cfc3 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
@@ -1,7 +1,7 @@
{
"swagger": "2.0",
"info": {
- "version": "2024-11-18-preview",
+ "version": "2025-05-01-preview",
"title": "AdvisorManagementClient",
"description": "REST APIs for Azure Advisor Resiliency Reviews."
},
From 1571009c592b11b5183f0203b1333c63d0a0985c Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Tue, 20 May 2025 15:32:59 -0700
Subject: [PATCH 03/11] Updated readme, advisor json file to reflect right
exmaples
---
.../preview/2025-05-01-preview/advisor.json | 25 +++++++++++++-----
.../advisor/resource-manager/readme.md | 26 ++++++++++++++++++-
2 files changed, 44 insertions(+), 7 deletions(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index 8dade8b9a460..62bf4d5473f7 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -404,7 +404,7 @@
}
}
},
- "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/recommendations": {
+ "/{resourceUri}/providers/Microsoft.Advisor/recommendations": {
"get": {
"tags": [
"GetRecommendations"
@@ -413,7 +413,7 @@
"operationId": "Recommendations_List",
"parameters": [
{
- "$ref": "#/parameters/subscriptionIdParameter"
+ "$ref": "#/parameters/resourceUriParameter"
},
{
"$ref": "#/parameters/apiVersionParameter"
@@ -460,8 +460,11 @@
"nextLinkName": "nextLink"
},
"x-ms-examples": {
- "ListRecommendations": {
- "$ref": "./examples/ListRecommendations.json"
+ "ListRecommendationsSubscriptionResourceUri": {
+ "$ref": "./examples/ListRecommendationsSubscriptionResourceUri.json"
+ },
+ "ListRecommendationsServiceGroupResourceUri": {
+ "$ref": "./examples/ListRecommendationsServiceGroupResourceUri.json"
}
}
}
@@ -545,8 +548,11 @@
},
"deprecated": false,
"x-ms-examples": {
- "GetRecommendationDetail": {
- "$ref": "./examples/GetRecommendationDetail.json"
+ "GetRecommendationDetailSubscriptionResourceUri": {
+ "$ref": "./examples/GetRecommendationDetailSubscriptionResourceUri.json"
+ },
+ "GetRecommendationDetailServiceGroupResourceUri": {
+ "$ref": "./examples/GetRecommendationDetailServiceGroupResourceUri.json"
}
}
},
@@ -1872,6 +1878,13 @@
"required": true,
"type": "string"
},
+ "resourceUriParameter" :{
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.",
+ "required": true,
+ "type": "string"
+ },
"apiVersionParameter": {
"name": "api-version",
"in": "query",
diff --git a/specification/advisor/resource-manager/readme.md b/specification/advisor/resource-manager/readme.md
index c3e5035b452c..c23e0f1a7da6 100644
--- a/specification/advisor/resource-manager/readme.md
+++ b/specification/advisor/resource-manager/readme.md
@@ -26,7 +26,31 @@ These are the global settings for the Advisor API.
``` yaml
openapi-type: arm
-tag: package-2024-11-preview
+tag: package-2025-05-preview
+```
+
+### Tag: package-2025-05-preview
+These settings apply only when `--tag=package-2025-05-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-2025-05-preview'
+input-file:
+ - Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+ - Microsoft.Advisor/preview/2025-05-01-preview/assessments.json
+ - Microsoft.Advisor/preview/2025-05-01-preview/resiliencyReviews.json
+suppressions:
+ - code: ArmResourcePropertiesBag
+ reason: Suppressing for now to avoid breaking change.
+ from:
+ - assessments.json
+ where:
+ - $.definitions["AssessmentResult"]
+ - code: RequiredPropertiesMissingInResourceModel
+ reason: Suppressing for now to avoid breaking change.
+ from:
+ - assessments.json
+ where:
+ - $.definitions["AssessmentTypeListResult"]
+ - $.definitions["WorkloadListResult"]
```
### Tag: package-2024-11-preview
From 170acd66e05d17458db9946d8ba7a2185ba6f012 Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Fri, 23 May 2025 11:30:38 -0700
Subject: [PATCH 04/11] Fixed the error on Control parameter
---
.../preview/2025-05-01-preview/advisor.json | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index 62bf4d5473f7..21245d828dee 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -1279,6 +1279,25 @@
"modelAsString": true
}
},
+ "control": {
+ "description": "The sub-category of the recommendation.",
+ "enum": [
+ "HighAvailability",
+ "BusinessContinuity",
+ "DisasterRecovery",
+ "Scalability",
+ "MonitoringAndAlerting",
+ "ServiceUpgradeAndRetirement",
+ "Other",
+ "PrioritizedRecommendations",
+ "Personalized"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "control",
+ "modelAsString": true
+ }
+ },
"impact": {
"description": "The business impact of the recommendation.",
"enum": [
From fe16f4d78a92049ca22d6ccb8d3a084131354722 Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 09:49:03 -0700
Subject: [PATCH 05/11] Added a new Row for the RsourceUri path for the
Recommendations RT
---
.../preview/2025-05-01-preview/advisor.json | 65 ++++++++++++++++++-
1 file changed, 62 insertions(+), 3 deletions(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index 21245d828dee..177a9d358b07 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -460,15 +460,74 @@
"nextLinkName": "nextLink"
},
"x-ms-examples": {
- "ListRecommendationsSubscriptionResourceUri": {
- "$ref": "./examples/ListRecommendationsSubscriptionResourceUri.json"
- },
"ListRecommendationsServiceGroupResourceUri": {
"$ref": "./examples/ListRecommendationsServiceGroupResourceUri.json"
}
}
}
},
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/recommendations": {
+ "get": {
+ "tags": [
+ "GetRecommendations"
+ ],
+ "description": "Obtains cached recommendations for a subscription. The recommendations are generated or computed by invoking generateRecommendations.",
+ "operationId": "Recommendations_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply to the recommendations.
Filter can be applied to properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '[Category](#category)'] with operators ['eq', 'and', 'or'].
Example:
- $filter=Category eq 'Cost' and ResourceGroup eq 'MyResourceGroup'",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "description": "The number of recommendations per page if a paged version of this API is being used.",
+ "required": false,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "name": "$skipToken",
+ "in": "query",
+ "description": "The page-continuation token to use with a paged version of this API.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully obtained cached recommendations.",
+ "schema": {
+ "$ref": "#/definitions/ResourceRecommendationBaseListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ArmErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListRecommendationsSubscriptionResourceUri": {
+ "$ref": "./examples/ListRecommendationsSubscriptionResourceUri.json"
+ }
+ }
+ }
+ },
"/providers/Microsoft.Advisor/operations": {
"get": {
"tags": [
From a17aa3961aaf63fc43a93f744c81529ebc0f6e1f Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 10:02:47 -0700
Subject: [PATCH 06/11] Added different operationId
---
.../Microsoft.Advisor/preview/2025-05-01-preview/advisor.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index 177a9d358b07..89400398ee22 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -410,7 +410,7 @@
"GetRecommendations"
],
"description": "Obtains cached recommendations for a subscription. The recommendations are generated or computed by invoking generateRecommendations.",
- "operationId": "Recommendations_List",
+ "operationId": "Recommendations_ListByTenant",
"parameters": [
{
"$ref": "#/parameters/resourceUriParameter"
@@ -475,7 +475,7 @@
"operationId": "Recommendations_List",
"parameters": [
{
- "$ref": "#/parameters/resourceUriParameter"
+ "$ref": "#/parameters/subscriptionIdParameter"
},
{
"$ref": "#/parameters/apiVersionParameter"
From fa68e464f93678b9741c441dfef2df496fd18e87 Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 10:10:25 -0700
Subject: [PATCH 07/11] Fxied the example
---
.../examples/ListRecommendationsSubscriptionResourceUri.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
index 88a1a88701c3..7c0e16b9ef0c 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
@@ -1,6 +1,6 @@
{
"parameters": {
- "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
"$top": 10,
"api-version": "2025-05-01-preview"
},
From 012f0902b5838c016656441a409a0a7745490732 Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 10:19:31 -0700
Subject: [PATCH 08/11] Fxied the prettier npm error
---
.../preview/2025-05-01-preview/advisor.json | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index 89400398ee22..c64eef9ae4b5 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -522,7 +522,7 @@
"nextLinkName": "nextLink"
},
"x-ms-examples": {
- "ListRecommendationsSubscriptionResourceUri": {
+ "ListRecommendationsSubscriptionResourceUri": {
"$ref": "./examples/ListRecommendationsSubscriptionResourceUri.json"
}
}
@@ -607,7 +607,7 @@
},
"deprecated": false,
"x-ms-examples": {
- "GetRecommendationDetailSubscriptionResourceUri": {
+ "GetRecommendationDetailSubscriptionResourceUri": {
"$ref": "./examples/GetRecommendationDetailSubscriptionResourceUri.json"
},
"GetRecommendationDetailServiceGroupResourceUri": {
@@ -1956,7 +1956,7 @@
"required": true,
"type": "string"
},
- "resourceUriParameter" :{
+ "resourceUriParameter": {
"name": "resourceUri",
"in": "path",
"description": "The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.",
@@ -1989,4 +1989,4 @@
]
}
]
-}
+}
\ No newline at end of file
From e15cfb383eb3ec3711c492a393714c0b13b10c35 Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 10:32:06 -0700
Subject: [PATCH 09/11] NPM Pretty error fix
---
...endationDetailServiceGroupResourceUri.json | 112 ++++++++--------
...endationDetailSubscriptionResourceUri.json | 124 +++++++++---------
2 files changed, 118 insertions(+), 118 deletions(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
index a5ef431e2ad8..023c4198e21b 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
@@ -1,62 +1,62 @@
{
- "parameters": {
- "resourceUri": "providers/microsoft.management/serviceGroup/serviceGroupXYZ",
- "recommendationId": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
- "api-version": "2025-05-01-preview"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/37c93209-4bfb-4f3b-8874-ccc718f7a467",
- "name": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
- "properties": {
- "category": "HighAvailability",
- "impact": "Medium",
- "impactedField": "Microsoft.Management/serviceGroup",
- "impactedValue": "serviceGroupXYZ",
- "lastUpdated": "2025-04-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "To ensure high availability add one or more virtual machines to this availability set",
- "solution": "To ensure high availability add one or more virtual machines to this availability set"
- },
- "resourceMetadata": {
- "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
- }
+ "parameters": {
+ "resourceUri": "providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "recommendationId": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "name": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Management/serviceGroup",
+ "impactedValue": "serviceGroupXYZ",
+ "lastUpdated": "2025-04-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
},
- "singular": "Availability set",
- "plural": "Availability sets"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
- }
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
}
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
+ },
+ "singular": "Availability set",
+ "plural": "Availability sets"
},
- "type": "Microsoft.Advisor/recommendations"
- }
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ },
+ "type": "Microsoft.Advisor/recommendations"
}
}
- }
\ No newline at end of file
+ }
+}
\ No newline at end of file
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
index 8b6ea12e24f4..00b0ecb5abd3 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
@@ -1,70 +1,70 @@
{
- "parameters": {
- "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
- "recommendationId": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "api-version": "2025-05-01-preview"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "properties": {
- "category": "Security",
- "impact": "Medium",
- "impactedField": "Microsoft.Compute/availabilitysets",
- "impactedValue": "armavset",
- "lastUpdated": "2017-02-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "Monitoring agent should be installed on your machines",
- "solution": "Monitoring agent should be installed on your machines"
- },
- "remediation": {
+ "parameters": {
+ "resourceUri": "subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "recommendationId": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/availabilitysets",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
+ "action": {
"additionalProperties": {
- "httpMethod": "POST",
- "uri": "uri",
- "details": "link to document"
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset"
}
},
- "resourceMetadata": {
- "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
- "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset"
- }
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
},
- "singular": "Availability set",
- "plural": "Availability sets"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
}
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
- },
- "type": "Microsoft.Advisor/recommendations"
- }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ },
+ "type": "Microsoft.Advisor/recommendations"
}
}
- }
\ No newline at end of file
+ }
+}
\ No newline at end of file
From eac53091a826cae9c7dc9b4c1fea3420c3f9ed80 Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 11:14:54 -0700
Subject: [PATCH 10/11] Npx prettier command executed
---
npx | 0
.../Microsoft.Advisor/preview/2025-05-01-preview/advisor.json | 2 +-
.../GetRecommendationDetailServiceGroupResourceUri.json | 2 +-
.../GetRecommendationDetailSubscriptionResourceUri.json | 2 +-
4 files changed, 3 insertions(+), 3 deletions(-)
create mode 100644 npx
diff --git a/npx b/npx
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
index c64eef9ae4b5..6ea0d210e292 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/advisor.json
@@ -1989,4 +1989,4 @@
]
}
]
-}
\ No newline at end of file
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
index 023c4198e21b..f5ac652c03a2 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailServiceGroupResourceUri.json
@@ -59,4 +59,4 @@
}
}
}
-}
\ No newline at end of file
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
index 00b0ecb5abd3..ec3c239fad66 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/GetRecommendationDetailSubscriptionResourceUri.json
@@ -67,4 +67,4 @@
}
}
}
-}
\ No newline at end of file
+}
From acdcf29c433a9cb2aaa5d3810101a80de895101e Mon Sep 17 00:00:00 2001
From: mojayara <44553037+mojayara@users.noreply.github.com>
Date: Wed, 28 May 2025 11:36:14 -0700
Subject: [PATCH 11/11] More npx prettier
---
...ecommendationsServiceGroupResourceUri.json | 216 +++++++--------
...ecommendationsSubscriptionResourceUri.json | 260 +++++++++---------
2 files changed, 238 insertions(+), 238 deletions(-)
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json
index 7880f506ed22..02ae07c5f12b 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsServiceGroupResourceUri.json
@@ -1,118 +1,118 @@
{
- "parameters": {
- "resourceUri": "providers/microsoft.management/serviceGroups/serviceGroupXYZ",
- "$top": 10,
- "api-version": "2025-05-01-preview"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations?api-version=2025-05-01-preview&$top=10&$skiptoken=skiptoken",
- "value": [
- {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/37c93209-4bfb-4f3b-8874-ccc718f7a467",
- "name": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
- "type": "Microsoft.Advisor/recommendations",
- "properties": {
- "category": "HighAvailability",
- "impact": "Medium",
- "impactedField": "Microsoft.Management/serviceGroup",
- "impactedValue": "serviceGroupXYZ",
- "lastUpdated": "2025-04-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "To ensure high availability add one or more virtual machines to this availability set",
- "solution": "To ensure high availability add one or more virtual machines to this availability set"
- },
- "resourceMetadata": {
- "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
- }
+ "parameters": {
+ "resourceUri": "providers/microsoft.management/serviceGroups/serviceGroupXYZ",
+ "$top": 10,
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations?api-version=2025-05-01-preview&$top=10&$skiptoken=skiptoken",
+ "value": [
+ {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "name": "37c93209-4bfb-4f3b-8874-ccc718f7a467",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Management/serviceGroup",
+ "impactedValue": "serviceGroupXYZ",
+ "lastUpdated": "2025-04-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
},
- "singular": "Availability set",
- "plural": "Availability sets"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
- }
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
}
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
- }
- },
- {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/de0eb863-583e-ac10-eb7f-cb0f6b570e2b",
- "name": "de0eb863-583e-ac10-eb7f-cb0f6b570e2b",
- "type": "Microsoft.Advisor/recommendations",
- "properties": {
- "category": "HighAvailability",
- "impact": "Medium",
- "impactedField": "Microsoft.Management/serviceGroup",
- "impactedValue": "serviceGroupXYZ",
- "lastUpdated": "2025-04-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "To ensure high availability add one or more virtual machines to this availability set",
- "solution": "To ensure high availability add one or more virtual machines to this availability set"
},
- "resourceMetadata": {
- "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
- }
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
},
- "singular": "Availability set",
- "plural": "Availability sets"
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ }
+ },
+ {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ/providers/Microsoft.Advisor/recommendations/de0eb863-583e-ac10-eb7f-cb0f6b570e2b",
+ "name": "de0eb863-583e-ac10-eb7f-cb0f6b570e2b",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Management/serviceGroup",
+ "impactedValue": "serviceGroupXYZ",
+ "lastUpdated": "2025-04-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
+ }
},
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
- }
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/providers/microsoft.management/serviceGroup/serviceGroupXYZ"
}
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
- }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
}
- ]
- }
+ }
+ ]
}
}
- }
\ No newline at end of file
+ }
+}
diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
index 7c0e16b9ef0c..92e7495ce06c 100644
--- a/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
+++ b/specification/advisor/resource-manager/Microsoft.Advisor/preview/2025-05-01-preview/examples/ListRecommendationsSubscriptionResourceUri.json
@@ -1,142 +1,142 @@
{
- "parameters": {
- "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
- "$top": 10,
- "api-version": "2025-05-01-preview"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/recommendations?api-version=2025-05-01-preview&$top=10&$skiptoken=skiptoken",
- "value": [
- {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
- "type": "Microsoft.Advisor/recommendations",
- "properties": {
- "category": "HighAvailability",
- "impact": "Medium",
- "impactedField": "Microsoft.Compute/availabilitySets",
- "impactedValue": "armavset",
- "lastUpdated": "2017-02-24T22:24:43.3216408Z",
- "risk": "Warning",
- "remediation": {
+ "parameters": {
+ "subscriptionId": "a5481ee1-95df-47d0-85d4-dd3f0dfa19bc",
+ "$top": 10,
+ "api-version": "2025-05-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/recommendations?api-version=2025-05-01-preview&$top=10&$skiptoken=skiptoken",
+ "value": [
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset/providers/Microsoft.Advisor/recommendations/bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "name": "bd27ddc6-1312-4067-b4af-cbb45e32cfd7",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "HighAvailability",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/availabilitySets",
+ "impactedValue": "armavset",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "remediation": {
+ "additionalProperties": {
+ "httpMethod": "POST",
+ "uri": "uri",
+ "details": "link to document"
+ }
+ },
+ "shortDescription": {
+ "problem": "To ensure high availability add one or more virtual machines to this availability set",
+ "solution": "To ensure high availability add one or more virtual machines to this availability set"
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
+ "action": {
"additionalProperties": {
- "httpMethod": "POST",
- "uri": "uri",
- "details": "link to document"
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
}
},
- "shortDescription": {
- "problem": "To ensure high availability add one or more virtual machines to this availability set",
- "solution": "To ensure high availability add one or more virtual machines to this availability set"
- },
- "resourceMetadata": {
- "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/armavset",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
+ "singular": "Availability set",
+ "plural": "Availability sets"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
},
- "singular": "Availability set",
- "plural": "Availability sets"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
}
- ],
- "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
- "label": "Enable Soft Delete",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
- "tracked": false
- }
- },
- {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47",
- "name": "1b266c91-3a92-4423-8aa2-ee13a6d90f47",
- "type": "Microsoft.Advisor/recommendations",
- "properties": {
- "category": "Security",
- "impact": "Medium",
- "impactedField": "Microsoft.Compute/virtualMachines",
- "impactedValue": "xyz",
- "lastUpdated": "2017-02-24T22:24:43.3216408Z",
- "risk": "Warning",
- "shortDescription": {
- "problem": "Monitoring agent should be installed on your machines",
- "solution": "Monitoring agent should be installed on your machines"
- },
- "resourceMetadata": {
- "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz",
- "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
- "action": {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link3",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
+ }
+ ],
+ "description": "After enabling Soft Delete, deleted data transitions to a soft deleted state instead of being permanently deleted. When data is overwritten, a soft deleted snapshot is generated to save the state of the overwritten data. You can configure the amount of time soft deleted data is recoverable before it permanently expires.",
+ "label": "Enable Soft Delete",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Save and recover your data when blobs or blob snapshots are accidentally overwritten or deleted",
+ "tracked": false
+ }
+ },
+ {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Advisor/recommendations/1b266c91-3a92-4423-8aa2-ee13a6d90f47",
+ "name": "1b266c91-3a92-4423-8aa2-ee13a6d90f47",
+ "type": "Microsoft.Advisor/recommendations",
+ "properties": {
+ "category": "Security",
+ "impact": "Medium",
+ "impactedField": "Microsoft.Compute/virtualMachines",
+ "impactedValue": "xyz",
+ "lastUpdated": "2017-02-24T22:24:43.3216408Z",
+ "risk": "Warning",
+ "shortDescription": {
+ "problem": "Monitoring agent should be installed on your machines",
+ "solution": "Monitoring agent should be installed on your machines"
+ },
+ "resourceMetadata": {
+ "resourceId": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz",
+ "source": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/15e912ef-221a-4efe-80d2-df5671cdd5f5",
+ "action": {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link3",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
},
- "singular": "Virtual machine",
- "plural": "Virtual machines"
- },
- "actions": [
- {
- "additionalProperties": {
- "actionType": "Document",
- "link": "https://link1",
- "caption": "Enable Soft Delete to protect blob data",
- "description": "Enable Soft Delete to protect blob data"
- },
- "metadata": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
- }
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
}
- ],
- "description": "Monitoring agent should be installed on your machines.",
- "label": "Enable monitoring agent",
- "learnMoreLink": "https://link2",
- "potentialBenefits": "Protect and monitor machine",
- "tracked": true,
- "trackedProperties": {
- "state": "Postponed",
- "postponedTime": "2023-10-01T00:00:00Z",
- "reason": "RiskAccepted",
- "priority": "High"
- },
- "resourceWorkload": {
- "id": "0560dbdb-f207-4690-b4ba-1fc0c3a0f082",
- "name": "Critical VM Workload"
- },
- "review": {
- "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/assessments/MCWAR1",
- "name": "Monthly WAF Review 09/23"
},
- "sourceSystem": "CxObserve",
- "notes": "This is a note"
- }
+ "singular": "Virtual machine",
+ "plural": "Virtual machines"
+ },
+ "actions": [
+ {
+ "additionalProperties": {
+ "actionType": "Document",
+ "link": "https://link1",
+ "caption": "Enable Soft Delete to protect blob data",
+ "description": "Enable Soft Delete to protect blob data"
+ },
+ "metadata": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc"
+ }
+ }
+ ],
+ "description": "Monitoring agent should be installed on your machines.",
+ "label": "Enable monitoring agent",
+ "learnMoreLink": "https://link2",
+ "potentialBenefits": "Protect and monitor machine",
+ "tracked": true,
+ "trackedProperties": {
+ "state": "Postponed",
+ "postponedTime": "2023-10-01T00:00:00Z",
+ "reason": "RiskAccepted",
+ "priority": "High"
+ },
+ "resourceWorkload": {
+ "id": "0560dbdb-f207-4690-b4ba-1fc0c3a0f082",
+ "name": "Critical VM Workload"
+ },
+ "review": {
+ "id": "/subscriptions/a5481ee1-95df-47d0-85d4-dd3f0dfa19bc/providers/Microsoft.Advisor/assessments/MCWAR1",
+ "name": "Monthly WAF Review 09/23"
+ },
+ "sourceSystem": "CxObserve",
+ "notes": "This is a note"
}
- ]
- }
+ }
+ ]
}
}
- }
\ No newline at end of file
+ }
+}