swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector AnomalyAlerting API schemes: - https tags: - name: AnomalyAlerting paths: /alert/anomaly/configurations/{configurationId}: get: tags: - AnomalyAlerting summary: Microsoft Azure Query A Single Anomaly Alerting Configuration operationId: microsoftAzureGetanomalyalertingconfiguration produces: - application/json parameters: - in: path name: configurationId description: anomaly alerting configuration unique id required: true type: string format: uuid responses: '200': description: Success schema: $ref: '#/definitions/AnomalyAlertingConfiguration' default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-examples: Query a single anomaly alerting configuration: $ref: ./examples/getAnomalyAlertingConfiguration.json description: Needs a more full description created. patch: tags: - AnomalyAlerting summary: Microsoft Azure Update Anomaly Alerting Configuration operationId: microsoftAzureUpdateanomalyalertingconfiguration consumes: - application/merge-patch+json produces: - application/json parameters: - in: path name: configurationId description: anomaly alerting configuration unique id required: true type: string format: uuid - in: body name: body description: anomaly alerting configuration required: true schema: $ref: '#/definitions/AnomalyAlertingConfigurationPatch' responses: '200': description: Success schema: $ref: '#/definitions/AnomalyAlertingConfiguration' default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-examples: Update anomaly alerting configuration: $ref: ./examples/updateAnomalyAlertingConfiguration.json description: Needs a more full description created. delete: tags: - AnomalyAlerting summary: Microsoft Azure Delete Anomaly Alerting Configuration operationId: microsoftAzureDeleteanomalyalertingconfiguration produces: - application/json parameters: - in: path name: configurationId description: anomaly alerting configuration unique id required: true type: string format: uuid responses: '204': description: The resource is deleted successfully or does not exist. default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-examples: Delete anomaly alerting configuration: $ref: ./examples/deleteAnomalyAlertingConfiguration.json description: Needs a more full description created. /alert/anomaly/configurations: post: tags: - AnomalyAlerting summary: Microsoft Azure Create Anomaly Alerting Configuration operationId: microsoftAzureCreateanomalyalertingconfiguration consumes: - application/json produces: - application/json parameters: - in: body name: body description: anomaly alerting configuration required: true schema: $ref: '#/definitions/AnomalyAlertingConfiguration' responses: '201': description: Success headers: Location: description: Location of the newly created resource. type: string default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-examples: Create anomaly alerting configuration: $ref: ./examples/createAnomalyAlertingConfiguration.json description: Needs a more full description created. /alert/anomaly/configurations/{configurationId}/alerts/query: post: tags: - AnomalyAlerting summary: Microsoft Azure Query Alerts Under Anomaly Alerting Configuration operationId: microsoftAzureGetalertsbyanomalyalertingconfiguration consumes: - application/json produces: - application/json parameters: - in: path name: configurationId description: anomaly alerting configuration unique id required: true type: string format: uuid - in: query name: $skip description: for paging, skipped number type: integer format: int32 - in: query name: $maxpagesize description: the maximum number of items in one page type: integer format: int32 - in: body name: body description: query alerting result request required: true schema: $ref: '#/definitions/AlertingResultQuery' responses: '200': description: Success schema: $ref: '#/definitions/AlertResultList' default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-pageable: nextLinkName: '@nextLink' x-ms-examples: Query alerts under anomaly alerting configuration: $ref: ./examples/getAlertsByAnomalyAlertingConfiguration.json description: Needs a more full description created. /alert/anomaly/configurations/{configurationId}/alerts/{alertId}/anomalies: get: tags: - AnomalyAlerting summary: Microsoft Azure Query Anomalies Under A Specific Alert operationId: microsoftAzureGetanomaliesfromalertbyanomalyalertingconfiguration produces: - application/json parameters: - in: path name: configurationId description: anomaly alerting configuration unique id required: true type: string format: uuid - in: path name: alertId description: alert id required: true type: string - in: query name: $skip description: for paging, skipped number type: integer format: int32 - in: query name: $maxpagesize description: the maximum number of items in one page type: integer format: int32 responses: '200': description: Success schema: $ref: '#/definitions/AnomalyResultList' default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-pageable: nextLinkName: '@nextLink' x-ms-examples: Query anomalies under a specific alert: $ref: ./examples/getAnomaliesFromAlertByAnomalyAlertingConfiguration.json description: Needs a more full description created. /alert/anomaly/configurations/{configurationId}/alerts/{alertId}/incidents: get: tags: - AnomalyAlerting summary: Microsoft Azure Query Incidents Under A Specific Alert operationId: microsoftAzureGetincidentsfromalertbyanomalyalertingconfiguration produces: - application/json parameters: - in: path name: configurationId description: anomaly alerting configuration unique id required: true type: string format: uuid - in: path name: alertId description: alert id required: true type: string - in: query name: $skip description: for paging, skipped number type: integer format: int32 - in: query name: $maxpagesize description: the maximum number of items in one page type: integer format: int32 responses: '200': description: Success schema: $ref: '#/definitions/IncidentResultList' default: description: Client error or server error (4xx or 5xx) schema: $ref: '#/definitions/ErrorCode' x-ms-pageable: nextLinkName: '@nextLink' x-ms-examples: Query incidents under a specific alert: $ref: ./examples/getIncidentsFromAlertByAnomalyAlertingConfiguration.json description: Needs a more full description created. definitions: AnomalyResultList: required: - value type: object properties: '@nextLink': type: string readOnly: true value: type: array items: $ref: '#/definitions/AnomalyResult' AlertResult: type: object properties: alertId: description: alert id type: string readOnly: true timestamp: format: date-time description: anomaly time type: string readOnly: true createdTime: format: date-time description: created time type: string readOnly: true modifiedTime: format: date-time description: modified time type: string readOnly: true SeriesIdentity: required: - dimension type: object properties: dimension: description: dimension specified for series type: object additionalProperties: type: string DimensionGroupIdentity: required: - dimension type: object properties: dimension: description: dimension specified for series group type: object additionalProperties: type: string MetricAlertingConfiguration: required: - anomalyDetectionConfigurationId - anomalyScopeType type: object properties: anomalyDetectionConfigurationId: format: uuid description: Anomaly detection configuration unique id type: string anomalyScopeType: description: Anomaly scope enum: - All - Dimension - TopN type: string example: All x-ms-enum: name: AnomalyScope modelAsString: true negationOperation: description: Negation operation default: false type: boolean dimensionAnomalyScope: $ref: '#/definitions/DimensionGroupIdentity' topNAnomalyScope: $ref: '#/definitions/TopNGroupScope' severityFilter: $ref: '#/definitions/SeverityCondition' snoozeFilter: $ref: '#/definitions/AlertSnoozeCondition' valueFilter: $ref: '#/definitions/ValueCondition' IncidentResult: required: - incidentId - lastTime - property - rootNode - startTime type: object properties: dataFeedId: format: uuid description: "data feed unique id\r\n\r\nonly return for alerting anomaly result" type: string readOnly: true metricId: format: uuid description: "metric unique id\r\n\r\nonly return for alerting incident result" type: string readOnly: true anomalyDetectionConfigurationId: format: uuid description: "anomaly detection configuration unique id\r\n\r\nonly return for alerting incident result" type: string readOnly: true incidentId: description: incident id type: string startTime: format: date-time description: incident start time type: string lastTime: format: date-time description: incident last time type: string rootNode: $ref: '#/definitions/SeriesIdentity' property: $ref: '#/definitions/IncidentProperty' AlertResultList: required: - value type: object properties: '@nextLink': type: string readOnly: true value: type: array items: $ref: '#/definitions/AlertResult' AnomalyResult: required: - dimension - property - timestamp type: object properties: dataFeedId: format: uuid description: "data feed unique id\r\n\r\nonly return for alerting anomaly result" type: string readOnly: true metricId: format: uuid description: "metric unique id\r\n\r\nonly return for alerting anomaly result" type: string readOnly: true anomalyDetectionConfigurationId: format: uuid description: "anomaly detection configuration unique id\r\n\r\nonly return for alerting anomaly result" type: string readOnly: true timestamp: format: date-time description: anomaly time type: string createdTime: format: date-time description: "created time\r\n\r\nonly return for alerting result" type: string readOnly: true modifiedTime: format: date-time description: "modified time\r\n\r\nonly return for alerting result" type: string readOnly: true dimension: description: dimension specified for series type: object additionalProperties: type: string property: $ref: '#/definitions/AnomalyProperty' AnomalyAlertingConfiguration: required: - hookIds - metricAlertingConfigurations - name type: object properties: anomalyAlertingConfigurationId: format: uuid description: anomaly alerting configuration unique id type: string readOnly: true name: description: anomaly alerting configuration name type: string description: description: anomaly alerting configuration description default: '' type: string crossMetricsOperator: description: "cross metrics operator\r\n\r\nshould be specified when setting up multiple metric alerting configurations" enum: - AND - OR - XOR type: string x-ms-enum: name: AnomalyAlertingConfigurationLogicType modelAsString: true splitAlertByDimensions: description: dimensions used to split alert uniqueItems: true type: array items: type: string hookIds: description: hook unique ids uniqueItems: true type: array items: format: uuid type: string metricAlertingConfigurations: description: Anomaly alerting configurations uniqueItems: true type: array items: $ref: '#/definitions/MetricAlertingConfiguration' example: name: alerting configuration name crossMetricsOperator: AND hookIds: - 00000000-0000-0000-0000-000000000001 metricAlertingConfigurations: - anomalyDetectionConfigurationId: 33333333-3333-3333-3333-000000000001 anomalyScopeType: All negationOperation: false severityFilter: minAlertSeverity: Medium maxAlertSeverity: High snoozeFilter: autoSnooze: 0 snoozeScope: Series onlyForSuccessive: true - anomalyDetectionConfigurationId: 33333333-3333-3333-3333-000000000002 anomalyScopeType: Dimension negationOperation: false dimensionAnomalyScope: dimension: city: Beijing severityFilter: minAlertSeverity: Low maxAlertSeverity: High snoozeFilter: autoSnooze: 0 snoozeScope: Series onlyForSuccessive: true valueFilter: lower: 0 upper: 1000 direction: Both type: Value AlertingResultQuery: required: - endTime - startTime - timeMode type: object properties: startTime: format: date-time description: start time type: string endTime: format: date-time description: end time type: string timeMode: description: time mode enum: - AnomalyTime - CreatedTime - ModifiedTime type: string x-ms-enum: name: TimeMode modelAsString: true example: startTime: '2020-01-01T00:00:00Z' endTime: '2020-02-01T00:00:00Z' timeMode: AnomalyTime AnomalyProperty: required: - anomalySeverity type: object properties: anomalySeverity: description: anomaly severity enum: - Low - Medium - High type: string x-ms-enum: name: Severity modelAsString: true anomalyStatus: description: "anomaly status\r\n\r\nonly return for alerting anomaly result" enum: - Active - Resolved type: string readOnly: true x-ms-enum: name: AnomalyStatus modelAsString: true value: format: double description: value of the anomaly type: number readOnly: true expectedValue: format: double description: expected value of the anomaly given by smart detector type: number readOnly: true AlertSnoozeCondition: required: - autoSnooze - onlyForSuccessive - snoozeScope type: object properties: autoSnooze: format: int32 description: 'snooze point count, value range : [0, +∞)' type: integer snoozeScope: description: snooze scope enum: - Metric - Series type: string x-ms-enum: name: SnoozeScope modelAsString: true onlyForSuccessive: description: only snooze for successive anomalies type: boolean IncidentProperty: required: - maxSeverity type: object properties: maxSeverity: description: max severity of latest anomalies in the incident enum: - Low - Medium - High type: string x-ms-enum: name: Severity modelAsString: true incidentStatus: description: "incident status\r\n\r\nonly return for alerting incident result" enum: - Active - Resolved type: string readOnly: true x-ms-enum: name: IncidentStatus modelAsString: true valueOfRootNode: format: double description: value of the root node type: number readOnly: true expectedValueOfRootNode: format: double description: expected value of the root node given by smart detector type: number readOnly: true AnomalyAlertingConfigurationPatch: type: object properties: name: description: Anomaly alerting configuration name type: string description: description: anomaly alerting configuration description default: '' type: string crossMetricsOperator: description: cross metrics operator enum: - AND - OR - XOR type: string x-ms-enum: name: AnomalyAlertingConfigurationLogicType modelAsString: true splitAlertByDimensions: description: dimensions used to split alert uniqueItems: true type: array items: type: string hookIds: description: hook unique ids uniqueItems: true type: array items: format: uuid type: string metricAlertingConfigurations: description: Anomaly alerting configurations uniqueItems: true type: array items: $ref: '#/definitions/MetricAlertingConfiguration' example: name: alerting configuration name description: this is an anomaly alerting configuration crossMetricsOperator: AND hookIds: - 00000000-0000-0000-0000-000000000001 metricAlertingConfigurations: - anomalyDetectionConfigurationId: 33333333-3333-3333-3333-000000000001 anomalyScopeType: All negationOperation: false severityFilter: minAlertSeverity: Medium maxAlertSeverity: High snoozeFilter: autoSnooze: 0 snoozeScope: Series onlyForSuccessive: true - anomalyDetectionConfigurationId: 33333333-3333-3333-3333-000000000002 anomalyScopeType: Dimension negationOperation: false dimensionAnomalyScope: dimension: city: Beijing severityFilter: minAlertSeverity: Low maxAlertSeverity: High snoozeFilter: autoSnooze: 0 snoozeScope: Series onlyForSuccessive: true valueFilter: lower: 0 upper: 1000 direction: Both ErrorCode: type: object properties: message: type: string code: type: string IncidentResultList: required: - value type: object properties: '@nextLink': type: string readOnly: true value: type: array items: $ref: '#/definitions/IncidentResult' ValueCondition: required: - direction type: object properties: lower: format: double description: "lower bound\r\n\r\nshould be specified when direction is Both or Down" type: number upper: format: double description: "upper bound\r\n\r\nshould be specified when direction is Both or Up" type: number direction: description: value filter direction enum: - Both - Down - Up type: string x-ms-enum: name: Direction modelAsString: true type: description: data used to implement value filter default: Value enum: - Value - Mean type: string x-ms-enum: name: ValueType modelAsString: true metricId: format: uuid description: the other metric unique id used for value filter type: string triggerForMissing: description: "trigger alert when the corresponding point is missing in the other metric\r\n\r\nshould be specified only when using other metric to filter" type: boolean TopNGroupScope: required: - minTopCount - period - top type: object properties: top: format: int32 description: 'top N, value range : [1, +∞)' type: integer period: format: int32 description: 'point count used to look back, value range : [1, +∞)' type: integer minTopCount: format: int32 description: "min count should be in top N, value range : [1, +∞)\r\n\r\nshould be less than or equal to period" type: integer SeverityCondition: required: - maxAlertSeverity - minAlertSeverity type: object properties: minAlertSeverity: description: min alert severity enum: - Low - Medium - High type: string x-ms-enum: name: Severity modelAsString: true maxAlertSeverity: description: max alert severity enum: - Low - Medium - High type: string x-ms-enum: name: Severity modelAsString: true x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'