swagger: '2.0'
schemes:
  - https
host: management.azure.com
info:
  description: REST APIs for Azure Advisor
  title: AdvisorManagementClient
  version: '2020-01-01'
  x-apisguru-categories:
    - cloud
  x-logo:
    url: 'https://assets.onestore.ms/cdnfiles/onestorerolling-1606-01000/shell/v3/images/logo/microsoft.png'
  x-origin:
    - format: swagger
      url: 'https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json'
      version: '2.0'
  x-preferred: false
  x-providerName: azure.com
  x-serviceName: advisor
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    authorizationUrl: 'https://login.microsoftonline.com/common/oauth2/authorize'
    description: Azure Active Directory OAuth2 Flow.
    flow: implicit
    scopes:
      user_impersonation: impersonate your user account
    type: oauth2
security:
  - azure_auth:
      - user_impersonation
parameters:
  apiVersionParameter:
    description: The version of the API to be used with the client request.
    in: query
    name: api-version
    required: true
    type: string
  subscriptionIdParameter:
    description: The Azure subscription ID.
    in: path
    name: subscriptionId
    required: true
    type: string
paths:
  /providers/Microsoft.Advisor/metadata:
    get:
      operationId: RecommendationMetadata_List
      parameters:
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '200':
          description: OK. Successfully retrieved metadata entities
          schema:
            $ref: '#/definitions/MetadataEntityListResult'
      summary: Gets the list of metadata entities.
      tags:
        - Metadata
      x-ms-examples:
        GetMetadata:
          parameters:
            api-version: '2020-01-01'
          responses:
            '200':
              body:
                nextLink: string
                value:
                  - id: providers/Microsoft.Advisor/metadata/recommendationType
                    name: recommendationType
                    properties:
                      applicableScenarios:
                        - Alerts
                      dependsOn:
                        - category
                        - impact
                      displayName: Recommendation Type
                      supportedValues:
                        - displayName: Upgrade your SKU or add more instances to ensure fault tolerance
                          id: 6a2b1e70-bd4c-4163-86de-5243d7ac05ee
                        - displayName: Delete ExpressRoute circuits in the provider status of Not Provisioned
                          id: da6630fb-4286-4996-92a3-a43f5f26dd34
                    type: Microsoft.Advisor/metadata
                  - id: providers/Microsoft.Advisor/metadata/recommendationCategory
                    name: recommendationCategory
                    properties:
                      applicableScenarios:
                        - Alerts
                      dependsOn: null
                      displayName: Category
                      supportedValues:
                        - displayName: Cost
                          id: Cost
                        - displayName: Performance
                          id: Performance
                    type: Microsoft.Advisor/metadata
                  - id: providers/Microsoft.Advisor/metadata/recommendationImpact
                    name: recommendationImpact
                    properties:
                      applicableScenarios: null
                      dependsOn: null
                      displayName: Impact
                      supportedValues:
                        - displayName: High
                          id: High
                        - displayName: Medium
                          id: Medium
                        - displayName: Low
                          id: Low
                    type: Microsoft.Advisor/metadata
      x-ms-pageable:
        nextLinkName: nextLink
  '/providers/Microsoft.Advisor/metadata/{name}':
    get:
      operationId: RecommendationMetadata_Get
      parameters:
        - description: Name of metadata entity.
          in: path
          name: name
          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'
      summary: Gets the metadata entity.
      tags:
        - Metadata
      x-ms-examples:
        GetMetadata:
          parameters:
            api-version: '2020-01-01'
            name: types
          responses:
            '200':
              body:
                id: providers/Microsoft.Advisor/metadata/recommendationType
                name: recommendationType
                properties:
                  applicableScenarios:
                    - Alerts
                  dependsOn:
                    - category
                    - impact
                  displayName: Recommendation Type
                  supportedValues:
                    - displayName: Upgrade your SKU or add more instances to ensure fault tolerance
                      id: 6a2b1e70-bd4c-4163-86de-5243d7ac05ee
                    - displayName: Delete ExpressRoute circuits in the provider status of Not Provisioned
                      id: da6630fb-4286-4996-92a3-a43f5f26dd34
                type: Microsoft.Advisor/metadata
            '404':
              body:
                code: NotFound
                message: Unknown metadata name
  /providers/Microsoft.Advisor/operations:
    get:
      deprecated: false
      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'
      tags:
        - Operations
      x-ms-pageable:
        nextLinkName: nextLink
  '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations':
    get:
      deprecated: false
      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'
      summary: Retrieve Azure Advisor configurations.
      tags:
        - Configurations
      x-ms-examples:
        GetConfigurations:
          parameters:
            api-version: '2020-01-01'
            resourceGroup: resourceGroup
            subscriptionId: subscriptionId
          responses:
            '200':
              body:
                nextLink: string
                value:
                  - id: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Advisor/configurations/default
                    name: default
                    properties:
                      digests:
                        - actionGroupResourceId: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName
                          categories:
                            - HighAvailability
                            - Security
                            - Performance
                            - Cost
                            - OperationalExcellence
                          frequency: 30
                          language: en
                          name: digestConfigName
                          state: Active
                      exclude: false
                      lowCpuThreshold: '5'
                    type: Microsoft.Advisor/configurations
      x-ms-pageable:
        nextLinkName: nextLink
  '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations/{configurationName}':
    put:
      deprecated: false
      description: Create/Overwrite Azure Advisor configuration and also delete all configurations of contained resource groups.
      operationId: Configurations_CreateInSubscription
      parameters:
        - $ref: '#/parameters/apiVersionParameter'
        - description: The Azure Advisor configuration data structure.
          in: body
          name: configContract
          required: true
          schema:
            $ref: '#/definitions/ConfigData'
        - $ref: '#/parameters/subscriptionIdParameter'
        - description: Advisor configuration name. Value must be 'default'
          enum:
            - default
          in: path
          name: configurationName
          required: true
          type: string
          x-ms-enum:
            modelAsString: true
            name: ConfigurationName
      responses:
        '200':
          description: Successfully created/overwrote configuration.
          schema:
            $ref: '#/definitions/ConfigData'
        default:
          description: Error response describing why the operation failed.
          schema:
            $ref: '#/definitions/ArmErrorResponse'
      summary: Create/Overwrite Azure Advisor configuration.
      tags:
        - Configurations
      x-ms-examples:
        PutConfigurations:
          parameters:
            api-version: '2020-01-01'
            configContract:
              properties:
                digests:
                  - actionGroupResourceId: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName
                    categories:
                      - HighAvailability
                      - Security
                      - Performance
                      - Cost
                      - OperationalExcellence
                    frequency: 30
                    language: en
                    name: digestConfigName
                    state: Active
                exclude: true
                lowCpuThreshold: '5'
            configurationName: default
            resourceGroup: resourceGroup
            subscriptionId: subscriptionId
          responses:
            '200':
              body:
                id: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Advisor/configurations/default
                name: default
                properties:
                  digests:
                    - actionGroupResourceId: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName
                      categories:
                        - HighAvailability
                        - Security
                        - Performance
                        - Cost
                        - OperationalExcellence
                      frequency: 30
                      language: en
                      name: digestConfigName
                      state: Active
                  exclude: true
                  lowCpuThreshold: '5'
                type: Microsoft.Advisor/configurations
  '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations':
    post:
      deprecated: false
      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
      tags:
        - GenerateRecommendations
      x-ms-examples:
        GenerateRecommendations:
          parameters:
            api-version: '2020-01-01'
            subscriptionId: subscriptionId
          responses:
            '202':
              headers:
                Location: 'https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Microsoft.Advisor/generateRecommendations/recGUID?api-version=2020-01-01'
                Retry-After: '60'
  '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations/{operationId}':
    get:
      deprecated: false
      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'
        - description: 'The operation ID, which can be found from the Location field in the generate recommendation response header.'
          format: uuid
          in: path
          name: operationId
          required: true
          type: string
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '202':
          description: Accepted. Recommendation generation is in progress.
        '204':
          description: NoContent. Recommendation generation has been completed.
      tags:
        - GenerateRecommendations
      x-ms-examples:
        GetGenerateStatus:
          parameters:
            api-version: '2020-01-01'
            operationId: operationGUID
            subscriptionId: subscriptionId
          responses:
            '202': {}
            '204': {}
  '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/recommendations':
    get:
      deprecated: false
      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'
        - description: The filter to apply to the recommendations.
          in: query
          name: $filter
          required: false
          type: string
        - description: The number of recommendations per page if a paged version of this API is being used.
          in: query
          name: $top
          required: false
          type: integer
        - description: The page-continuation token to use with a paged version of this API.
          in: query
          name: $skipToken
          required: false
          type: string
      responses:
        '200':
          description: OK. Successfully obtained cached recommendations.
          schema:
            $ref: '#/definitions/ResourceRecommendationBaseListResult'
      tags:
        - GetRecommendations
      x-ms-examples:
        ListRecommendations:
          parameters:
            $top: 10
            api-version: '2020-01-01'
            subscriptionId: subscriptionId
          responses:
            '200':
              body:
                nextLink: 'https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Advisor/recommendations?api-version=2020-01-01&$top=10&$skiptoken=skiptoken'
                value:
                  - id: /resourceUri/providers/Microsoft.Advisor/recommendations/recGUID
                    name: recGUID
                    properties:
                      category: HighAvailability
                      impact: Medium
                      impactedField: Microsoft.Compute/availabilitySets
                      impactedValue: armavset
                      lastUpdated: '2017-02-24T22:24:43.3216408Z'
                      risk: Warning
                      shortDescription:
                        problem: This availability set is not configured for fault tolerance
                        solution: To ensure high availability add one or more virtual machines to this availability set
                    type: Microsoft.Advisor/recommendations
      x-ms-pageable:
        nextLinkName: nextLink
  '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/suppressions':
    get:
      deprecated: false
      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'
        - description: The number of suppressions per page if a paged version of this API is being used.
          format: int32
          in: query
          name: $top
          required: false
          type: integer
        - description: The page-continuation token to use with a paged version of this API.
          in: query
          name: $skipToken
          required: false
          type: string
      responses:
        '200':
          description: OK. Successfully got all suppressions in a subscription.
          schema:
            $ref: '#/definitions/SuppressionContractListResult'
      tags:
        - Suppressions
      x-ms-examples:
        ListSuppressions:
          parameters:
            api-version: '2020-01-01'
            subscriptionId: subscriptionId1
          responses:
            '200':
              body:
                nextLink: 'https://management.azure.com/subscriptions/3f75fdf7-977e-44ad-990d-99f14f0f299f/providers/microsoft.Advisor/suppressions?api-version=2020-01-01&$top=3&$skiptoken=skiptoken'
                value:
                  - id: /resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId/suppressions/suppressionName1
                    name: suppressionName1
                    properties:
                      suppressionId: suppressionId1
                      ttl: '7.00:00:00'
                    type: Microsoft.Advisor/suppressions
                  - id: /resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId/suppressions/suppressionName2
                    name: suppressionName2
                    properties:
                      suppressionId: suppressionId2
                      ttl: '7.00:00:00'
                    type: Microsoft.Advisor/suppressions
      x-ms-pageable:
        nextLinkName: nextLink
  '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations':
    get:
      deprecated: false
      operationId: Configurations_ListByResourceGroup
      parameters:
        - $ref: '#/parameters/apiVersionParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - description: The name of the Azure resource group.
          in: path
          name: resourceGroup
          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'
      summary: Retrieve Azure Advisor configurations.
      tags:
        - Configurations
      x-ms-examples:
        GetConfigurations:
          parameters:
            api-version: '2020-01-01'
            resourceGroup: resourceGroup
            subscriptionId: subscriptionId
          responses:
            '200':
              body:
                nextLink: string
                value:
                  - id: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Advisor/configurations/default
                    name: default
                    properties:
                      digests:
                        - actionGroupResourceId: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName
                          categories:
                            - HighAvailability
                            - Security
                            - Performance
                            - Cost
                            - OperationalExcellence
                          frequency: 30
                          language: en
                          name: digestConfigName
                          state: Active
                      exclude: false
                      lowCpuThreshold: '5'
                    type: Microsoft.Advisor/configurations
      x-ms-pageable:
        nextLinkName: null
  '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations/{configurationName}':
    put:
      deprecated: false
      operationId: Configurations_CreateInResourceGroup
      parameters:
        - $ref: '#/parameters/apiVersionParameter'
        - description: The Azure Advisor configuration data structure.
          in: body
          name: configContract
          required: true
          schema:
            $ref: '#/definitions/ConfigData'
        - $ref: '#/parameters/subscriptionIdParameter'
        - description: Advisor configuration name. Value must be 'default'
          enum:
            - default
          in: path
          name: configurationName
          required: true
          type: string
          x-ms-enum:
            modelAsString: true
            name: ConfigurationName
        - description: The name of the Azure resource group.
          in: path
          name: resourceGroup
          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'
      summary: Create/Overwrite Azure Advisor configuration.
      tags:
        - Configurations
      x-ms-examples:
        PutConfigurations:
          parameters:
            api-version: '2020-01-01'
            configContract:
              properties:
                digests:
                  - actionGroupResourceId: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName
                    categories:
                      - HighAvailability
                      - Security
                      - Performance
                      - Cost
                      - OperationalExcellence
                    frequency: 30
                    language: en
                    name: digestConfigName
                    state: Active
                exclude: true
                lowCpuThreshold: '5'
            configurationName: default
            resourceGroup: resourceGroup
            subscriptionId: subscriptionId
          responses:
            '200':
              body:
                id: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Advisor/configurations/default
                name: default
                properties:
                  digests:
                    - actionGroupResourceId: /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName
                      categories:
                        - HighAvailability
                        - Security
                        - Performance
                        - Cost
                        - OperationalExcellence
                      frequency: 30
                      language: en
                      name: digestConfigName
                      state: Active
                  exclude: true
                  lowCpuThreshold: '5'
                type: Microsoft.Advisor/configurations
  '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}':
    get:
      deprecated: false
      description: Obtains details of a cached recommendation.
      operationId: Recommendations_Get
      parameters:
        - description: The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.
          in: path
          name: resourceUri
          required: true
          type: string
        - description: The recommendation ID.
          in: path
          name: recommendationId
          required: true
          type: string
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '200':
          description: OK. Successfully got recommendation detail.
          schema:
            $ref: '#/definitions/ResourceRecommendationBase'
      tags:
        - GetRecommendations
      x-ms-examples:
        GetRecommendationDetail:
          parameters:
            api-version: '2020-01-01'
            recommendationId: recommendationId
            resourceUri: resourceUri
          responses:
            '200':
              body:
                id: /resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId
                name: recommendationId
                properties:
                  category: HighAvailability
                  impact: Medium
                  impactedField: Microsoft.Compute/availabilitySets
                  impactedValue: armavset
                  lastUpdated: '2017-02-24T22:24:43.3216408Z'
                  risk: Warning
                  shortDescription:
                    problem: This availability set is not configured for fault tolerance
                    solution: To ensure high availability add one or more virtual machines to this availability set
                type: Microsoft.Advisor/recommendations
  '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}':
    delete:
      deprecated: false
      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:
        - description: The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.
          in: path
          name: resourceUri
          required: true
          type: string
        - description: The recommendation ID.
          in: path
          name: recommendationId
          required: true
          type: string
        - description: The name of the suppression.
          in: path
          name: name
          required: true
          type: string
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '204':
          description: NoContent. The recommendation has been activated.
      tags:
        - Suppressions
      x-ms-examples:
        DeleteSuppression:
          parameters:
            api-version: '2020-01-01'
            name: suppressionName1
            recommendationId: recommendationId
            resourceUri: resourceUri
          responses:
            '204': {}
    get:
      deprecated: false
      description: Obtains the details of a suppression.
      operationId: Suppressions_Get
      parameters:
        - description: The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.
          in: path
          name: resourceUri
          required: true
          type: string
        - description: The recommendation ID.
          in: path
          name: recommendationId
          required: true
          type: string
        - description: The name of the suppression.
          in: path
          name: name
          required: true
          type: string
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '200':
          description: OK. Successfully got suppression detail.
          schema:
            $ref: '#/definitions/SuppressionContract'
      tags:
        - Suppressions
      x-ms-examples:
        GetSuppressionDetail:
          parameters:
            api-version: '2020-01-01'
            name: suppressionName1
            recommendationId: recommendationId
            resourceUri: resourceUri
          responses:
            '200':
              body:
                id: /resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId/suppressions/suppressionName1
                name: suppressionName1
                properties:
                  suppressionId: suppressionId1
                  ttl: '7.00:00:00'
                type: Microsoft.Advisor/suppressions
    put:
      deprecated: false
      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:
        - description: The fully qualified Azure Resource Manager identifier of the resource to which the recommendation applies.
          in: path
          name: resourceUri
          required: true
          type: string
        - description: The recommendation ID.
          in: path
          name: recommendationId
          required: true
          type: string
        - description: The name of the suppression.
          in: path
          name: name
          required: true
          type: string
        - description: 'The snoozed or dismissed attribute; for example, the snooze duration.'
          in: body
          name: suppressionContract
          required: true
          schema:
            $ref: '#/definitions/SuppressionContract'
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '200':
          description: OK. Successfully created suppression.
          schema:
            $ref: '#/definitions/SuppressionContract'
      tags:
        - Suppressions
      x-ms-examples:
        CreateSuppression:
          parameters:
            api-version: '2020-01-01'
            name: suppressionName1
            recommendationId: recommendationId
            resourceUri: resourceUri
            suppressionContract:
              properties:
                ttl: '07:00:00:00'
          responses:
            '200':
              body:
                id: /resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId/suppressions/suppressionName1
                name: suppressionName1
                properties:
                  suppressionId: suppresionId
                  ttl: '07:00:00:00'
                type: Microsoft.Advisor/suppressions
definitions:
  ARMErrorResponseBody:
    description: ARM error response body.
    properties:
      code:
        description: Gets or sets the string that can be used to programmatically identify the error.
        type: string
      message:
        description: Gets or sets the string that describes the error in detail and provides debugging information.
        type: string
    type: object
  ArmErrorResponse:
    properties:
      error:
        $ref: '#/definitions/ARMErrorResponseBody'
    type: object
  ConfigData:
    allOf:
      - $ref: '#/definitions/Resource'
    description: The Advisor configuration data structure.
    properties:
      properties:
        $ref: '#/definitions/ConfigDataProperties'
        description: The Advisor configuration data structure.
        x-ms-client-flatten: true
    type: object
  ConfigDataProperties:
    description: Configuration data properties
    properties:
      digests:
        description: Advisor digest configuration. Valid only for subscriptions
        items:
          $ref: '#/definitions/DigestConfig'
        type: array
      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:
          modelAsString: true
          name: CpuThreshold
    type: object
  ConfigurationListResult:
    description: The list of Advisor configurations.
    properties:
      nextLink:
        description: The link used to get the next page of configurations.
        type: string
      value:
        description: The list of configurations.
        items:
          $ref: '#/definitions/ConfigData'
        type: array
    type: object
  DigestConfig:
    description: Advisor Digest configuration entity
    properties:
      actionGroupResourceId:
        description: Action group resource id used by digest.
        type: string
      categories:
        description: 'Categories to send digest for. If categories are not provided, then digest will be sent for all categories.'
        items:
          enum:
            - HighAvailability
            - Security
            - Performance
            - Cost
            - OperationalExcellence
          type: string
          x-ms-enum:
            modelAsString: true
            name: Category
        type: array
      frequency:
        description: 'Frequency that digest will be triggered, in days. Value must be between 7 and 30 days inclusive.'
        format: int32
        type: integer
      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
      name:
        description: Name of digest configuration. Value is case-insensitive and must be unique within a subscription.
        type: string
      state:
        description: State of digest configuration.
        enum:
          - Active
          - Disabled
        type: string
        x-ms-enum:
          modelAsString: true
          name: DigestConfigState
    type: object
  MetadataEntity:
    description: The metadata entity contract.
    properties:
      id:
        description: The resource Id 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
      type:
        description: The type of the metadata entity.
        type: string
    type: object
  MetadataEntityListResult:
    description: The list of metadata entities
    properties:
      nextLink:
        description: The link used to get the next page of metadata.
        type: string
      value:
        description: The list of metadata entities.
        items:
          $ref: '#/definitions/MetadataEntity'
        type: array
    type: object
  MetadataEntityProperties:
    description: The metadata entity properties
    properties:
      applicableScenarios:
        description: The list of scenarios applicable to this metadata entity.
        items:
          enum:
            - Alerts
          type: string
          x-ms-enum:
            modelAsString: true
            name: Scenario
        type: array
      dependsOn:
        description: The list of keys on which this entity depends on.
        items:
          type: string
        type: array
      displayName:
        description: The display name.
        type: string
      supportedValues:
        description: The list of supported values.
        items:
          $ref: '#/definitions/MetadataSupportedValueDetail'
        type: array
    type: object
  MetadataSupportedValueDetail:
    description: The metadata supported value detail.
    properties:
      displayName:
        description: The display name.
        type: string
      id:
        description: The id.
        type: string
    type: object
  OperationDisplayInfo:
    description: The operation supported by Advisor.
    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
    type: object
  OperationEntity:
    description: The operation supported by Advisor.
    properties:
      display:
        $ref: '#/definitions/OperationDisplayInfo'
        description: The operation supported by Advisor.
      name:
        description: 'Operation name: {provider}/{resource}/{operation}.'
        type: string
    type: object
  OperationEntityListResult:
    description: The list of Advisor operations.
    properties:
      nextLink:
        description: The link used to get the next page of operations.
        type: string
      value:
        description: The list of operations.
        items:
          $ref: '#/definitions/OperationEntity'
        type: array
    type: object
  RecommendationProperties:
    description: The properties of the recommendation.
    properties:
      category:
        description: The category of the recommendation.
        enum:
          - HighAvailability
          - Security
          - Performance
          - Cost
          - OperationalExcellence
        type: string
        x-ms-enum:
          modelAsString: true
          name: category
      extendedProperties:
        additionalProperties:
          type: string
        description: Extended properties
        type: object
      impact:
        description: The business impact of the recommendation.
        enum:
          - High
          - Medium
          - Low
        type: string
        x-ms-enum:
          modelAsString: true
          name: impact
      impactedField:
        description: The resource type identified by Advisor.
        type: string
      impactedValue:
        description: The resource identified by Advisor.
        type: string
      lastUpdated:
        description: The most recent time that Advisor checked the validity of the recommendation.
        format: date-time
        type: string
      metadata:
        additionalProperties:
          type: object
        description: The recommendation metadata.
        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:
          modelAsString: true
          name: risk
      shortDescription:
        $ref: '#/definitions/ShortDescription'
        description: A summary of the recommendation.
      suppressionIds:
        description: The list of snoozed and dismissed rules for the recommendation.
        items:
          format: uuid
          type: string
        type: array
    type: object
  Resource:
    description: An Azure resource.
    properties:
      id:
        description: The resource ID.
        readOnly: true
        type: string
      name:
        description: The name of the resource.
        readOnly: true
        type: string
      type:
        description: The type of the resource.
        readOnly: true
        type: string
    x-ms-azure-resource: true
  ResourceRecommendationBase:
    allOf:
      - $ref: '#/definitions/Resource'
    description: Advisor Recommendation.
    properties:
      properties:
        $ref: '#/definitions/RecommendationProperties'
        description: The properties of the recommendation.
        x-ms-client-flatten: true
    type: object
  ResourceRecommendationBaseListResult:
    description: The list of Advisor recommendations.
    properties:
      nextLink:
        description: The link used to get the next page of recommendations.
        type: string
      value:
        description: The list of recommendations.
        items:
          $ref: '#/definitions/ResourceRecommendationBase'
        type: array
    type: object
  ShortDescription:
    description: A summary of the recommendation.
    properties:
      problem:
        description: The issue or opportunity identified by the recommendation.
        type: string
      solution:
        description: The remediation action suggested by the recommendation.
        type: string
    type: object
  SuppressionContract:
    allOf:
      - $ref: '#/definitions/Resource'
    description: 'The details of the snoozed or dismissed rule; for example, the duration, name, and GUID associated with the rule.'
    properties:
      properties:
        $ref: '#/definitions/SuppressionProperties'
        description: The properties of the suppression.
        x-ms-client-flatten: true
    type: object
  SuppressionContractListResult:
    description: The list of Advisor suppressions.
    properties:
      nextLink:
        description: The link used to get the next page of suppressions.
        type: string
      value:
        description: The list of suppressions.
        items:
          $ref: '#/definitions/SuppressionContract'
        type: array
    type: object
  SuppressionProperties:
    description: The properties of the suppression.
    properties:
      suppressionId:
        description: The GUID of the suppression.
        type: string
      ttl:
        description: The duration for which the suppression is valid.
        type: string
    type: object
