{
    "openapi": "3.0.0",
    "info": {
      "title": "Alerts API",
      "description": "This API enables you to retrieve and update alerts. You can also determine the frequency of new alerts over time.",
      "contact": {
        "name": "API Support",
        "url": "https://docs.moogsoft.com/en/moogsoft-apis.html",
        "email": "support@moogsoft.com"
      },
      "version": "1.2.0"
    },
    "servers": [
      {
        "url": "https://api.moogsoft.ai",
        "variables": {}
      }
    ],
    "paths": {
      "/v1/alerts/{alertId}": {
        "get": {
          "tags": [
            "alerts"
          ],
          "summary": "alertDetails",
          "description": "Returns a single alert.",
          "operationId": "alertDetails",
          "parameters": [
            {
              "name": "alertId",
              "in": "path",
              "description": "ID of the alert to return. Returns 400 (Invalid ID Supplied) if this value is anything other than a non-negative integer.",
              "required": true,
              "style": "simple",
              "schema": {
                "type": "string"
              }
            }
          ],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogResponseAlertWebDto"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        },
        "patch": {
          "tags": [
            "alerts"
          ],
          "summary": "updateAlert",
          "description": "Updates a single alert.",
          "operationId": "updateAlert",
          "parameters": [
            {
              "name": "alertId",
              "in": "path",
              "description": "",
              "required": true,
              "style": "simple",
              "schema": {
                "type": "integer",
                "format": "int64"
              }
            }
          ],
          "requestBody": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AlertUpdateRequest"
                }
              }
            },
            "required": false
          },
          "responses": {
            "204": {
              "description": "No Content",
              "headers": {},
              "content": {}
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/alerts": {
        "get": {
          "tags": [
            "alerts"
          ],
          "summary": "listAlerts",
          "description": "Get a list of all alerts with matching criteria.",
          "operationId": "listAlerts",
          "parameters": [
            {
              "name": "filter",
              "in": "query",
              "description": "Return only alerts that match this filter. To specify an alerts filter, do the following. <ol><li>Go to the Alerts table in the UI.</li><li>Enter and validate your filter in the search field above the table.</li><li>Copy and paste the filter string into the request.</li></ol> <br>Returns **400 (Invalid parameters)** if the filter format is invalid.",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "string",
                "example": "'incident count' > 3 AND severity in (Critical, Major, Minor, Warning)"
              }
            },
            {
              "name": "incident_id",
              "in": "query",
              "description": "Returns alerts that belong to this incident ID. (Takes precedence over filter",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "integer",
                "format": "int64"
              }
            },
            {
              "name": "limit",
              "in": "query",
              "description": "Maximum number of alerts to return. This is equivalent to the maximum number of alerts per page.",
              "style": "form",
              "explode": true,
              "schema": {
                "minimum": 1.0,
                "type": "integer",
                "format": "int32",
                "default": 50
              }
            },
            {
              "name": "sortBy",
              "in": "query",
              "description": "Field to sort by",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "string",
                "default": "first_event_time"
              }
            },
            {
              "name": "sortOrder",
              "in": "query",
              "description": "Sort order",
              "style": "form",
              "explode": true,
              "schema": {
                "$ref": "#/components/schemas/SortOrder"
              }
            },
            {
              "name": "start",
              "in": "query",
              "description": "Get the list of alerts starting at position [offset-1]. This is generally a multiple of the page size minus 1. If you are retrieving alerts 50 at a time, for example, set the <b><tt>max-results</tt></b> to 50. Then, for each iteration <b><tt>i</tt></b>, get the next set of alerts starting at <b><tt>i * max-results - 1</tt></b>&colon; 0, 49, 99...",
              "style": "form",
              "explode": true,
              "schema": {
                "minimum": 0.0,
                "type": "integer",
                "format": "int32",
                "default": 0
              }
            },
            {
              "name": "utcOffset",
              "in": "query",
              "description": "UTC Offset",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "string",
                "default": "GMT-0"
              }
            }
          ],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogResponseAlertList"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        },
        "patch": {
          "tags": [
            "alerts"
          ],
          "summary": "updateAlerts",
          "description": "Updates bulk alerts.",
          "operationId": "updateAlerts",
          "parameters": [],
          "requestBody": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkAlertUpdateRequest"
                }
              }
            },
            "required": false
          },
          "responses": {
            "204": {
              "description": "No Content",
              "headers": {},
              "content": {}
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/alerts/{alertId}/incidents": {
        "get": {
          "tags": [
            "alerts"
          ],
          "summary": "incidentIds",
          "description": "Get a list of all incidentIds for an alert.",
          "operationId": "incidentIds",
          "parameters": [
            {
              "name": "alertId",
              "in": "path",
              "description": "ID of the alert to use. Returns 400 (Invalid ID Supplied) if this value is anything other than a non-negative integer.",
              "required": true,
              "style": "simple",
              "schema": {
                "minimum": 1.0,
                "type": "integer",
                "format": "int64"
              }
            }
          ],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogResponseIncidentIdList"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/alerts-columns": {
        "get": {
          "tags": [
            "alerts-columns"
          ],
          "summary": "alertDtoColumnNames",
          "description": "Column names for filtering alerts in outbound integrations, returns a list of strings",
          "operationId": "alertDtoColumnNames",
          "parameters": [],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogResponseColumnsDto"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/alerts-count": {
        "get": {
          "tags": [
            "alerts-count"
          ],
          "summary": "getAlertCount",
          "description": "Returns a count of all alerts that match the following criteria.",
          "operationId": "getAlertCount",
          "parameters": [
            {
              "name": "filter",
              "in": "query",
              "description": "Return only alerts that match this filter. To specify an alerts filter, do the following. <ol><li>Go to the Alerts table in the UI.</li><li>Enter and validate your filter in the search field above the table.</li><li>Copy and paste the filter string into the request.</li></ol><br>Returns **400 (Invalid parameters)** if the filter format is invalid.",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "string"
              }
            },
            {
              "name": "limit",
              "in": "query",
              "description": "Maximum number of alerts to count.",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "integer",
                "format": "int64",
                "default": 1000
              }
            }
          ],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "type": "integer",
                    "format": "int64"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/alerts-search": {
        "get": {
          "tags": [
            "alerts-search"
          ],
          "summary": "search",
          "description": "Search for alerts matching the following criteria.",
          "operationId": "search",
          "parameters": [
            {
              "name": "eventTime",
              "in": "query",
              "description": "Event time for the alerts. Must be a UNIX timestamp. Not used if not present.",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "integer",
                "format": "int64"
              }
            },
            {
              "name": "namespace",
              "in": "query",
              "description": "Namespace of the alerts to search",
              "required": true,
              "style": "form",
              "explode": true,
              "schema": {
                "minLength": 1,
                "type": "string"
              }
            }
          ],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "format": "int64"
                    },
                    "description": ""
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/alerts-summaries": {
        "get": {
          "tags": [
            "alerts-summaries"
          ],
          "summary": "alertSummaries",
          "description": "Provide `begin` time and `end` time parameter for summary information.",
          "operationId": "alertSummaries",
          "parameters": [
            {
              "name": "begin",
              "in": "query",
              "description": "Start time for the summary. Must be a UNIX timestamp",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "integer",
                "format": "int64"
              }
            },
            {
              "name": "buckets",
              "in": "query",
              "description": "The number buckets requested. Must be > 0",
              "style": "form",
              "explode": true,
              "schema": {
                "minimum": 1.0,
                "type": "integer",
                "format": "int32",
                "default": 12
              }
            },
            {
              "name": "end",
              "in": "query",
              "description": "End time for the summary. Must be a UNIX timestamp",
              "style": "form",
              "explode": true,
              "schema": {
                "type": "integer",
                "format": "int64"
              }
            }
          ],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogResponseAlertSummaryDto"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      },
      "/v1/automation-config": {
        "get": {
          "tags": [
            "automation-config"
          ],
          "summary": "getAutomationConfig",
          "description": "Get automation config for auto close of alerts and incidents.",
          "operationId": "getAutomationConfig",
          "parameters": [],
          "responses": {
            "200": {
              "description": "OK",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogResponseAutomationConfigDto"
                  }
                }
              }
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        },
        "patch": {
          "tags": [
            "automation-config"
          ],
          "summary": "patchAutomationConfig",
          "description": "Update automation config for auto close of alerts and incidents.",
          "operationId": "patchAutomationConfig",
          "parameters": [],
          "requestBody": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AutomationConfigDto"
                }
              }
            },
            "required": false
          },
          "responses": {
            "204": {
              "description": "No Content",
              "headers": {},
              "content": {}
            },
            "400": {
              "description": "Invalid parameters or data validation violation",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "404": {
              "description": "Requested object(s) not found",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "4XX": {
              "description": "Authorization or other error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogFailureResponse"
                  }
                }
              }
            },
            "5XX": {
              "description": "Error",
              "headers": {},
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/MoogErrorResponse"
                  }
                }
              }
            }
          },
          "deprecated": false
        }
      }
    },
    "components": {
      "schemas": {
        "AlertList": {
          "title": "AlertList",
          "type": "object",
          "properties": {
            "result": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AlertDetails"
              },
              "description": ""
            }
          }
        },
        "AlertSummaryDto": {
          "title": "AlertSummaryDto",
          "type": "object",
          "properties": {
            "buckets": {
              "type": "integer",
              "description": "Number of buckets",
              "format": "int32"
            },
            "metrics": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/MetricSummary"
              },
              "description": ""
            },
            "time": {
              "$ref": "#/components/schemas/TimeSummary"
            }
          }
        },
        "AlertUpdateRequest": {
          "title": "AlertUpdateRequest",
          "type": "object",
          "properties": {
            "assignee": {
              "type": "string",
              "description": "Username of the assignee, specified as one string. Returns an error if the username is not found.",
              "example": "john.doe@company.com"
            },
            "status": {
              "$ref": "#/components/schemas/Status"
            }
          }
        },
        "AlertDetails": {
          "title": "AlertDetails",
          "type": "object",
          "properties": {
            "assignee": {
              "type": "string",
              "description": "email of the user who is assigned to the incident/alert",
              "example": "test@moogsoft.com"
            },
            "description": {
              "type": "string",
              "description": "description that usually contains the incident/alert ID, source and service",
              "example": "1 Source: www.your-source.com Affected retail, support\n"
            },
            "first_event_time": {
              "type": "integer",
              "description": "Epoch timestamp in seconds of the first event for this incident",
              "format": "int64",
              "example": 1607985505
            },
            "last_event_time": {
              "type": "integer",
              "description": "Epoch timestamp in seconds of the last event for this incident",
              "format": "int64",
              "example": 1607985505
            },
            "severity": {
              "$ref": "#/components/schemas/Severity"
            },
            "status": {
              "$ref": "#/components/schemas/Status"
            },
            "alert_id": {
              "type": "integer",
              "format": "int64"
            },
            "alias": {
              "type": "string"
            },
            "check": {
              "type": "string"
            },
            "class": {
              "type": "string"
            },
            "dedupe_key": {
              "type": "string"
            },
            "event_count": {
              "type": "integer",
              "format": "int32"
            },
            "incidents": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              },
              "description": ""
            },
            "last_status_change_time": {
              "type": "integer",
              "format": "int64"
            },
            "location": {
              "type": "object"
            },
            "maintenance": {
              "type": "string"
            },
            "manager": {
              "type": "string"
            },
            "manager_id": {
              "type": "string"
            },
            "namespace": {
              "type": "string"
            },
            "service": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": ""
            },
            "source": {
              "type": "string"
            },
            "tags": {
              "type": "object"
            },
            "type": {
              "type": "string"
            },
            "utcOffset": {
              "type": "string"
            },
            "active_incidents_count": {
              "type": "integer",
              "format": "int32"
            },
            "service_count": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        "AutomationConfigDto": {
          "title": "AutomationConfigDto",
          "required": [
            "closeAlertsInSeconds",
            "closeAlertsWhenAllIncidentsClosed",
            "closeIncidentsInSeconds",
            "closeResolvedAlertsInSeconds",
            "closeResolvedIncidentsInSeconds"
          ],
          "type": "object",
          "properties": {
            "closeAlertsInSeconds": {
              "type": "integer",
              "description": "Automatically close any alerts that are older than XX seconds",
              "format": "int64"
            },
            "closeAlertsWhenAllIncidentsClosed": {
              "type": "boolean",
              "description": "When set to true, alerts will be automatically closed when all related incidents are closed. When set to false, alerts will be automatically closed when any related incident is closed."
            },
            "closeIncidentsInSeconds": {
              "type": "integer",
              "description": "Automatically close any incidents that are older than XX seconds",
              "format": "int64"
            },
            "closeResolvedAlertsInSeconds": {
              "type": "integer",
              "description": "Automatically close resolved alerts that have not been updated for XX seconds",
              "format": "int64"
            },
            "closeResolvedIncidentsInSeconds": {
              "type": "integer",
              "description": "Automatically close resolved incidents that have not been updated for XX seconds",
              "format": "int64"
            }
          }
        },
        "BulkAlertUpdateRequest": {
          "title": "BulkAlertUpdateRequest",
          "required": [
            "ids"
          ],
          "type": "object",
          "properties": {
            "assignee": {
              "type": "string",
              "description": "Username of the assignee, specified as one string. Returns an error if the username is not found.",
              "example": "john.doe@company.com"
            },
            "status": {
              "$ref": "#/components/schemas/Status"
            },
            "ids": {
              "minItems": 1,
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              },
              "description": "Unique alert ids to update"
            }
          }
        },
        "ColumnInfo": {
          "title": "ColumnInfo",
          "type": "object",
          "properties": {
            "internalName": {
              "type": "string"
            },
            "type": {
              "type": "string"
            },
            "uiName": {
              "type": "string"
            }
          }
        },
        "ColumnsDto": {
          "title": "ColumnsDto",
          "type": "object",
          "properties": {
            "fields": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ColumnInfo"
              },
              "description": ""
            }
          }
        },
        "DeleteConfigRequestDto": {
          "title": "DeleteConfigRequestDto",
          "type": "object",
          "properties": {
            "attributes": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "List of specific attributes to delete (if empty then all will be deleted)"
            },
            "component": {
              "pattern": "\\S",
              "type": "string",
              "description": "The component key for the config"
            },
            "encrypt": {
              "type": "boolean",
              "description": "Boolean indicating if the config is encrypted or not (Default false)"
            },
            "fuzzy": {
              "type": "boolean",
              "description": "Boolean indicating if the match criteria is fuzzy"
            },
            "owner": {
              "type": "string",
              "description": "The owner of the config"
            },
            "tenant": {
              "type": "string",
              "description": "The tenant that the config belongs to (Default default)"
            }
          },
          "description": "Config request for a delete"
        },
        "GeoLocation": {
          "title": "GeoLocation",
          "type": "object",
          "properties": {
            "lat": {
              "type": "number"
            },
            "long": {
              "type": "number"
            }
          }
        },
        "IncidentIdList": {
          "title": "IncidentIdList",
          "type": "object",
          "properties": {
            "result": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              },
              "description": ""
            }
          }
        },
        "Location": {
          "title": "Location",
          "type": "object",
          "properties": {
            "aisle": {
              "type": "string"
            },
            "availability_zone": {
              "type": "string"
            },
            "building": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "country": {
              "type": "string"
            },
            "data_center": {
              "type": "string"
            },
            "floor": {
              "type": "string"
            },
            "geo_coordinates": {
              "$ref": "#/components/schemas/GeoLocation"
            },
            "postcode": {
              "type": "string"
            },
            "rack": {
              "type": "string"
            },
            "region": {
              "type": "string"
            },
            "state_or_province": {
              "type": "string"
            },
            "street": {
              "type": "string"
            },
            "suite": {
              "type": "integer",
              "format": "int32"
            },
            "u_position": {
              "type": "string"
            }
          }
        },
        "MetricStats": {
          "title": "MetricStats",
          "type": "object",
          "properties": {
            "avg_prev_week": {
              "type": "number"
            }
          },
          "description": "Metric statistics"
        },
        "MetricSummary": {
          "title": "MetricSummary",
          "type": "object",
          "properties": {
            "metric": {
              "type": "string",
              "description": "Name of metric"
            },
            "stats": {
              "$ref": "#/components/schemas/MetricStats"
            },
            "values": {
              "type": "array",
              "items": {
                "type": "array",
                "items": {
                  "type": "object"
                }
              },
              "description": "List of pair of Long values: bucket time (UNIX time seconds) and bucket count"
            }
          }
        },
        "MoogErrorStatus": {
          "title": "MoogErrorStatus",
          "enum": [
            "failure",
            "error"
          ],
          "type": "string"
        },
        "MoogResponseAlertWebDto": {
          "title": "MoogResponseAlertWebDto",
          "required": [
            "status"
          ],
          "type": "object",
          "properties": {
            "data": {
              "$ref": "#/components/schemas/AlertDetails"
            },
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            }
          }
        },
        "MoogResponseColumnsDto": {
          "title": "MoogResponseColumnsDto",
          "required": [
            "status"
          ],
          "type": "object",
          "properties": {
            "data": {
              "$ref": "#/components/schemas/ColumnsDto"
            },
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            }
          }
        },
        "MoogResponseStatus": {
          "title": "MoogResponseStatus",
          "enum": [
            "success"
          ],
          "type": "string"
        },
        "SaveConfigRequestDto": {
          "title": "SaveConfigRequestDto",
          "type": "object",
          "properties": {
            "attributes": {
              "type": "object"
            },
            "component": {
              "pattern": "\\S",
              "type": "string",
              "description": "The component key for the config"
            },
            "encrypt": {
              "type": "boolean",
              "description": "Boolean indicating if the config is encrypted or not (Default false)"
            },
            "owner": {
              "type": "string",
              "description": "The owner of the config"
            },
            "tenant": {
              "type": "string",
              "description": "The tenant that the config belongs to (Default default)"
            }
          },
          "description": "Config request for either a POST or a PATCH"
        },
        "Severity": {
          "title": "Severity",
          "enum": [
            "clear",
            "unknown",
            "warning",
            "minor",
            "major",
            "critical"
          ],
          "type": "string",
          "description": "Severity Level (case-insensitive)"
        },
        "SortOrder": {
          "title": "SortOrder",
          "enum": [
            "asc",
            "desc"
          ],
          "type": "string"
        },
        "Status": {
          "title": "Status",
          "enum": [
            "error",
            "open",
            "in progress",
            "superseded",
            "resolved",
            "closed"
          ],
          "type": "string",
          "description": "Status for incidents and alerts (case-insensitive)"
        },
        "TimeSummary": {
          "title": "TimeSummary",
          "type": "object",
          "properties": {
            "begin": {
              "type": "integer",
              "description": "Begin time of summary (UNIX time seconds)",
              "format": "int64"
            },
            "end": {
              "type": "integer",
              "description": "End time of summary (UNIX time seconds)",
              "format": "int64"
            },
            "interval": {
              "type": "integer",
              "description": "Bucket window size (seconds)",
              "format": "int32"
            }
          },
          "description": "List of MetricSummary"
        },
        "MoogResponseAlertList": {
          "title": "MoogResponseAlertList",
          "required": [
            "status",
            "data"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            },
            "data": {
              "$ref": "#/components/schemas/AlertList"
            }
          },
          "description": "Alerts API AlertList response body"
        },
        "MoogResponseAlertSummaryDto": {
          "title": "MoogResponseAlertSummaryDto",
          "required": [
            "status",
            "data"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            },
            "data": {
              "$ref": "#/components/schemas/AlertSummaryDto"
            }
          },
          "description": "Alerts API AlertSummaryDto response body"
        },
        "MoogResponseIncidentIdList": {
          "title": "MoogResponseIncidentIdList",
          "required": [
            "status",
            "data"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            },
            "data": {
              "$ref": "#/components/schemas/IncidentIdList"
            }
          },
          "description": "Alerts API IncidentIdList response body"
        },
        "MoogResponseAutomationConfigDto": {
          "title": "MoogResponseAutomationConfigDto",
          "required": [
            "status",
            "data"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            },
            "data": {
              "$ref": "#/components/schemas/AutomationConfigDto"
            }
          },
          "description": "Alerts API AutomationConfigDto response body"
        },
        "MoogFailureResponse": {
          "title": "MoogFailureResponse",
          "required": [
            "status",
            "message"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Failure status indicator (always \"failure\")",
              "example": "failure"
            },
            "message": {
              "type": "string"
            },
            "additional": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": ""
            }
          },
          "description": "Alerts API failure response body"
        },
        "MoogErrorResponse": {
          "title": "MoogErrorResponse",
          "required": [
            "status",
            "message"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Error status indicator (always \"error\")",
              "example": "error"
            },
            "message": {
              "type": "string"
            },
            "additional": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": ""
            }
          },
          "description": "Alerts API error response body"
        },
        "MoogResponseVoid": {
          "title": "MoogResponseVoid",
          "required": [
            "status"
          ],
          "type": "object",
          "properties": {
            "status": {
              "type": "string",
              "description": "Success status indicator (always \"success\")",
              "example": "success"
            }
          },
          "description": "Empty (no data) response"
        }
      },
      "securitySchemes": {
        "apiKey": {
          "type": "apiKey",
          "description": "API Key for accessing Alerts API",
          "name": "apiKey",
          "in": "header"
        }
      }
    },
    "security": [
      {
        "apiKey": []
      }
    ],
    "tags": [
      {
        "name": "alerts",
        "description": "Alerts generated by Moogsoft Cloud"
      },
      {
        "name": "alerts-columns",
        "description": "Get column info about alerts"
      },
      {
        "name": "alerts-count",
        "description": "Get count of alerts"
      },
      {
        "name": "alerts-search",
        "description": "Search for alerts"
      },
      {
        "name": "alerts-summaries",
        "description": "Summary over time for alerts"
      },
      {
        "name": "automation-config",
        "description": "Automation config for auto close of alerts and incidents"
      }
    ],
    "externalDocs": {
      "description": "Find out more about Moogsoft Observability Cloud",
      "url": "https://docs.moogsoft.com/en/moogsoft-apis.html"
    }
  }