{ "$schema": "https://json-structure.org/meta/core/v0/#", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-cloudwatch/refs/heads/main/json-structure/cloudwatch-alarm-structure.json", "name": "Alarm", "description": "Represents a CloudWatch metric alarm", "type": "object", "properties": { "alarmName": { "type": "string", "description": "The name of the alarm" }, "alarmArn": { "type": "string", "description": "The ARN of the alarm" }, "alarmDescription": { "type": "string", "description": "The description of the alarm" }, "stateValue": { "type": "string", "description": "The state value for the alarm", "enum": [ "OK", "ALARM", "INSUFFICIENT_DATA" ] }, "stateReason": { "type": "string", "description": "An explanation for the alarm state" }, "stateUpdatedTimestamp": { "type": "datetime", "description": "The time stamp of the last update to the state" }, "metricName": { "type": "string", "description": "The name of the metric associated with the alarm" }, "namespace": { "type": "string", "description": "The namespace of the metric associated with the alarm" }, "statistic": { "type": "string", "description": "The statistic for the metric associated with the alarm" }, "dimensions": { "type": "array", "description": "The dimensions for the metric associated with the alarm", "items": { "type": "object", "properties": { "name": { "type": "string" }, "value": { "type": "string" } } } }, "period": { "type": "int32", "description": "The period in seconds over which the statistic is applied" }, "evaluationPeriods": { "type": "int32", "description": "The number of periods over which data is compared to the threshold" }, "threshold": { "type": "double", "description": "The value to compare with the specified statistic" }, "comparisonOperator": { "type": "string", "description": "The arithmetic operation to use when comparing the statistic and threshold" }, "treatMissingData": { "type": "string", "description": "How missing data points are treated" }, "actionsEnabled": { "type": "boolean", "description": "Whether actions are executed during alarm state changes" }, "alarmActions": { "type": "array", "description": "The actions to execute when the alarm transitions to ALARM state", "items": { "type": "string" } }, "okActions": { "type": "array", "description": "The actions to execute when the alarm transitions to OK state", "items": { "type": "string" } }, "insufficientDataActions": { "type": "array", "description": "The actions to execute when the alarm transitions to INSUFFICIENT_DATA state", "items": { "type": "string" } } } }