{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-cloudwatch/json-schema/amazon-cloudwatch-get-monitor-output-schema.json",
  "title": "GetMonitorOutput",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-cloudwatch-monitors-api-openapi.yml#/components/schemas/GetMonitorOutput",
  "type": "object",
  "properties": {
    "MonitorName": {
      "type": "string",
      "description": "The name of the monitor."
    },
    "MonitorArn": {
      "type": "string",
      "description": "The Amazon Resource Name (ARN) of the monitor."
    },
    "Resources": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The resources monitored by the monitor. Resources are listed by their Amazon Resource Names (ARNs)."
    },
    "Status": {
      "type": "string",
      "description": "The status of the monitor."
    },
    "CreatedAt": {
      "type": "string",
      "description": "The time when the monitor was created."
    },
    "ModifiedAt": {
      "type": "string",
      "description": "The last time that the monitor was modified."
    },
    "ProcessingStatus": {
      "type": "string",
      "description": "The health of the data processing for the monitor."
    },
    "ProcessingStatusInfo": {
      "type": "string",
      "description": "Additional information about the health of the data processing for the monitor."
    },
    "Tags": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "The tags that have been added to monitor."
    },
    "MaxCityNetworksToMonitor": {
      "type": "integer",
      "description": "The maximum number of city-networks to monitor for your resources. A city-network is the location (city) where clients access your application resources from and the ASN or network provider, such as an internet service provider (ISP), that clients access the resources through. This limit can help control billing costs. To learn more, see Choosing a city-network maximum value in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide."
    },
    "InternetMeasurementsLogDelivery": {
      "$ref": "#/$defs/InternetMeasurementsLogDelivery"
    },
    "TrafficPercentageToMonitor": {
      "type": "integer",
      "description": "The percentage of the internet-facing traffic for your application to monitor with this monitor. If you set a city-networks maximum, that limit overrides the traffic percentage that you set. To learn more, see Choosing an application traffic percentage to monitor in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide."
    },
    "HealthEventsConfig": {
      "$ref": "#/$defs/HealthEventsConfig"
    }
  },
  "required": [
    "MonitorName",
    "MonitorArn",
    "Resources",
    "Status",
    "CreatedAt",
    "ModifiedAt"
  ],
  "$defs": {
    "HealthEventsConfig": {
      "type": "object",
      "properties": {
        "AvailabilityScoreThreshold": {
          "type": "number",
          "description": "The health event threshold percentage set for availability scores."
        },
        "PerformanceScoreThreshold": {
          "type": "number",
          "description": "The health event threshold percentage set for performance scores."
        },
        "AvailabilityLocalHealthEventsConfig": {
          "$ref": "#/$defs/LocalHealthEventsConfig"
        },
        "PerformanceLocalHealthEventsConfig": {
          "$ref": "#/$defs/LocalHealthEventsConfig"
        }
      }
    },
    "InternetMeasurementsLogDelivery": {
      "type": "object",
      "properties": {
        "S3Config": {
          "$ref": "#/$defs/S3Config"
        }
      }
    },
    "LocalHealthEventsConfig": {
      "type": "object",
      "properties": {
        "Status": {
          "type": "string",
          "description": "The status of whether Internet Monitor creates a health event based on a threshold percentage set for a local health score. The status can be ENABLED or DISABLED."
        },
        "HealthScoreThreshold": {
          "type": "number",
          "description": "The health event threshold percentage set for a local health score."
        },
        "MinTrafficImpact": {
          "type": "number",
          "description": "The minimum percentage of overall traffic for an application that must be impacted by an issue before Internet Monitor creates an event when a threshold is crossed for a local health score. If you don't set a minimum traffic impact threshold, the default value is 0.1%."
        }
      }
    },
    "S3Config": {
      "type": "object",
      "properties": {
        "BucketName": {
          "type": "string",
          "description": "The Amazon S3 bucket name."
        },
        "BucketPrefix": {
          "type": "string",
          "description": "The Amazon S3 bucket prefix."
        },
        "LogDeliveryStatus": {
          "type": "string",
          "description": "The status of publishing Internet Monitor internet measurements to an Amazon S3 bucket."
        }
      }
    }
  }
}