{
  "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"
  }
}