swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  description: Azure Application Insights client for selecting pricing plans and options.
  title: ApplicationInsightsManagementClient
  version: 2017-10-01
  x-apisguru-categories:
    - cloud
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/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/applicationinsights/resource-manager/Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json
      version: "2.0"
  x-preferred: true
  x-providerName: azure.com
  x-serviceName: applicationinsights-componentFeaturesAndPricing_API
  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:
  ResourceNameParameter:
    description: The name of the Application Insights component resource.
    in: path
    name: resourceName
    required: true
    type: string
    x-ms-parameter-location: method
paths:
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/pricingPlans/current":
    get:
      description: Returns the current pricing plan setting for an Application Insights component.
      operationId: ComponentCurrentPricingPlan_Get
      parameters:
        - description: The name of the resource group. The name is case insensitive.
          in: path
          maxLength: 90
          minLength: 1
          name: resourceGroupName
          pattern: ^[-\w\._\(\)]+$
          required: true
          type: string
          x-ms-parameter-location: method
        - description: The API version to use for this operation.
          in: query
          minLength: 1
          name: api-version
          required: true
          type: string
        - description: The ID of the target subscription.
          in: path
          minLength: 1
          name: subscriptionId
          required: true
          type: string
        - $ref: "#/parameters/ResourceNameParameter"
      responses:
        "200":
          description: An Application Insights component pricing plan definition.
          schema:
            $ref: "#/definitions/ApplicationInsightsComponentPricingPlan"
      x-ms-examples:
        ComponentCurrentPricingPlanGet:
          parameters:
            api-version: 2017-10-01
            resourceGroupName: my-resource-group
            resourceName: my-component
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/pricingPlans/current
                name: current
                properties:
                  cap: 500
                  maxHistoryCap: 500
                  planType: Basic
                  resetHour: 16
                  stopSendNotificationWhenHitCap: false
                  stopSendNotificationWhenHitThreshold: false
                  warningThreshold: 90
                type: microsoft.insights/components/pricingPlans
    patch:
      description: Update current pricing plan for an Application Insights component.
      operationId: ComponentCurrentPricingPlan_Update
      parameters:
        - description: The name of the resource group. The name is case insensitive.
          in: path
          maxLength: 90
          minLength: 1
          name: resourceGroupName
          pattern: ^[-\w\._\(\)]+$
          required: true
          type: string
          x-ms-parameter-location: method
        - description: The API version to use for this operation.
          in: query
          minLength: 1
          name: api-version
          required: true
          type: string
        - description: The ID of the target subscription.
          in: path
          minLength: 1
          name: subscriptionId
          required: true
          type: string
        - $ref: "#/parameters/ResourceNameParameter"
        - description: Properties that need to be specified to update current pricing plan for an Application Insights component.
          in: body
          name: PricingPlanProperties
          required: true
          schema:
            $ref: "#/definitions/ApplicationInsightsComponentPricingPlan"
      responses:
        "200":
          description: Successful request when updating billing features for an Application Insights component. The updated current billing features are returned.
          schema:
            $ref: "#/definitions/ApplicationInsightsComponentPricingPlan"
      x-ms-examples:
        ComponentCurrentPricingPlanUpdate:
          parameters:
            PricingPlanProperties:
              id: /subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/pricingPlans/current
              name: current
              properties:
                cap: 500
                planType: Basic
                stopSendNotificationWhenHitCap: false
                stopSendNotificationWhenHitThreshold: false
                warningThreshold: 90
              type: microsoft.insights/components/pricingPlans
            api-version: 2017-10-01
            resourceGroupName: my-resource-group
            resourceName: my-component
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/pricingPlans/current
                name: current
                properties:
                  cap: 500
                  maxHistoryCap: 500
                  planType: Basic
                  resetHour: 16
                  stopSendNotificationWhenHitCap: false
                  stopSendNotificationWhenHitThreshold: false
                  warningThreshold: 90
                type: microsoft.insights/components/pricingPlans
    put:
      description: Replace current pricing plan for an Application Insights component.
      operationId: ComponentCurrentPricingPlan_CreateAndUpdate
      parameters:
        - description: The name of the resource group. The name is case insensitive.
          in: path
          maxLength: 90
          minLength: 1
          name: resourceGroupName
          pattern: ^[-\w\._\(\)]+$
          required: true
          type: string
          x-ms-parameter-location: method
        - description: The API version to use for this operation.
          in: query
          minLength: 1
          name: api-version
          required: true
          type: string
        - description: The ID of the target subscription.
          in: path
          minLength: 1
          name: subscriptionId
          required: true
          type: string
        - $ref: "#/parameters/ResourceNameParameter"
        - description: Properties that need to be specified to update current pricing plan for an Application Insights component.
          in: body
          name: PricingPlanProperties
          required: true
          schema:
            $ref: "#/definitions/ApplicationInsightsComponentPricingPlan"
      responses:
        "200":
          description: Successful request when updating billing features for an Application Insights component. The updated current billing features are returned.
          schema:
            $ref: "#/definitions/ApplicationInsightsComponentPricingPlan"
      x-ms-examples:
        ComponentCurrentPricingPlanUpdate:
          parameters:
            PricingPlanProperties:
              id: /subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/pricingPlans/current
              name: current
              properties:
                cap: 500
                maxHistoryCap: 500
                planType: Basic
                resetHour: 16
                stopSendNotificationWhenHitCap: false
                stopSendNotificationWhenHitThreshold: false
                warningThreshold: 90
              type: microsoft.insights/components/pricingPlans
            api-version: 2017-10-01
            resourceGroupName: my-resource-group
            resourceName: my-component
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/pricingPlans/current
                name: current
                properties:
                  cap: 500
                  maxHistoryCap: 500
                  planType: Basic
                  resetHour: 16
                  stopSendNotificationWhenHitCap: false
                  stopSendNotificationWhenHitThreshold: false
                  warningThreshold: 90
                type: microsoft.insights/components/pricingPlans
definitions:
  ApplicationInsightsComponentPricingPlan:
    allOf:
      - $ref: "#/definitions/Resource"
    description: An Application Insights component pricing plan
    properties:
      properties:
        $ref: "#/definitions/PricingPlanProperties"
        description: The properties of the suppression.
        x-ms-client-flatten: true
    type: object
  PricingPlanProperties:
    description: An Application Insights component daily data volume cap
    properties:
      cap:
        description: Daily data volume cap in GB.
        type: number
      maxHistoryCap:
        description: Maximum daily data volume cap that the user can set for this component.
        readOnly: true
        type: number
      planType:
        description: Pricing Plan Type Name.
        type: string
      resetHour:
        description: Daily data volume cap UTC reset hour.
        readOnly: true
        type: integer
      stopSendNotificationWhenHitCap:
        description: Do not send a notification email when the daily data volume cap is met.
        type: boolean
      stopSendNotificationWhenHitThreshold:
        description: Reserved, not used for now.
        type: boolean
      warningThreshold:
        description: Reserved, not used for now.
        type: integer
    type: object
  Resource:
    description: An Azure resource.
    properties:
      id:
        description: Azure resource Id.
        readOnly: true
        type: string
      name:
        description: Azure resource name.
        readOnly: true
        type: string
      type:
        description: Azure resource type.
        readOnly: true
        type: string
    x-ms-azure-resource: true
