Get rule details

GET /api/alerting/rule/{ruleId}

You must have read privileges for the appropriate Kibana features, depending on the consumer and rule_type_id of the rules you're seeking. For example, the Management > Stack Rules feature, Analytics > Discover and Machine Learning features, Observability features, or Security features. To get rules associated with the Stack Monitoring feature, use the monitoring_user built-in role.

Path parameters

  • ruleId string Required

    An identifier for the rule.

Responses

  • 200 application/json; Elastic-Api-Version=2023-10-31

    Indicates a successful call.

    Hide response attributes Show response attributes object
    • actions array[object] | null Required

      Default value is [] (empty).

      Hide actions attributes Show actions attributes object

      An action that runs under defined conditions.

      • Conditions that affect whether the action runs. If you specify multiple conditions, all conditions must be met for the action to run. For example, if an alert occurs within the specified time frame and matches the query, the action runs.

        Hide alerts_filter attributes Show alerts_filter attributes object
        • query object

          Defines a query filter that determines whether the action runs.

          Hide query attributes Show query attributes object
        • Defines a period that limits whether the action runs.

          Hide timeframe attributes Show timeframe attributes object
          • days array[integer]

            Defines the days of the week that the action can run, represented as an array of numbers. For example, 1 represents Monday. An empty array is equivalent to specifying all the days of the week.

          • hours object

            Defines the range of time in a day that the action can run. If the start value is 00:00 and the end value is 24:00, actions be generated all day.

            Hide hours attributes Show hours attributes object
            • end string

              The end of the time frame in 24-hour notation (hh:mm).

            • start string

              The start of the time frame in 24-hour notation (hh:mm).

          • timezone string

            The ISO time zone for the hours values. Values such as UTC and UTC+1 also work but lack built-in daylight savings time support and are not recommended.

      • The type of connector. This property appears in responses but cannot be set in requests.

      • The properties that affect how often actions are generated. If the rule type supports setting summary to true, the action can be a summary of alerts at the specified notification interval. Otherwise, an action runs for each alert at the specified notification interval. NOTE: You cannot specify these parameters when notify_when or throttle are defined at the rule level.

        Hide frequency attributes Show frequency attributes object
        • notify_when string Required

          Indicates how often alerts generate actions. Valid values include: onActionGroupChange: Actions run when the alert status changes; onActiveAlert: Actions run when the alert becomes active and at each check interval while the rule conditions are met; onThrottleInterval: Actions run when the alert becomes active and at the interval specified in the throttle property while the rule conditions are met. NOTE: You cannot specify notify_when at both the rule and action level. The recommended method is to set it for each action. If you set it at the rule level then update the rule in Kibana, it is automatically changed to use action-specific values.

          Values are onActionGroupChange, onActiveAlert, or onThrottleInterval.

        • summary boolean Required

          Indicates whether the action is a summary.

        • throttle string | null

          The throttle interval, which defines how often an alert generates repeated actions. It is specified in seconds, minutes, hours, or days and is applicable only if notify_when is set to onThrottleInterval. NOTE: You cannot specify the throttle interval at both the rule and action level. The recommended method is to set it for each action. If you set it at the rule level then update the rule in Kibana, it is automatically changed to use action-specific values.

      • group string Required

        The group name, which affects when the action runs (for example, when the threshold is met or when the alert is recovered). Each rule type has a list of valid action group names. If you don't need to group actions, set to default.

      • id string Required

        The identifier for the connector saved object.

      • params object Required

        The parameters for the action, which are sent to the connector. The params are handled as Mustache templates and passed a default set of context.

        Hide params attribute Show params attribute object
      • uuid string

        A universally unique identifier (UUID) for the action.

    • Indicates that an alert occurs only when the specified number of consecutive runs met the rule conditions.

      Hide alert_delay attribute Show alert_delay attribute object
      • active number Required

        The number of consecutive runs that must meet the rule conditions.

    • Indicates whether the API key that is associated with the rule was created by the user.

    • api_key_owner string | null Required

      The owner of the API key that is associated with the rule and used to run background tasks.

    • consumer string Required

      The application or feature that owns the rule. For example, alerts, apm, discover, infrastructure, logs, metrics, ml, monitoring, securitySolution, siem, stackAlerts, or uptime.

    • created_at string(date-time) Required

      The date and time that the rule was created.

    • created_by string | null Required

      The identifier for the user that created the rule.

    • enabled boolean Required

      Indicates whether the rule is currently enabled.

    • execution_status object Required
      Hide execution_status attributes Show execution_status attributes object
    • id string Required

      The identifier for the rule.

    • last_run object
      Hide last_run attributes Show last_run attributes object
    • mute_all boolean Required
    • muted_alert_ids array[string] | null Required
    • name string Required

      The name of the rule.

    • next_run string(date-time) | null
    • notify_when string | null

      Indicates how often alerts generate actions.

    • params object Required

      The parameters for the rule.

      Hide params attribute Show params attribute object
    • revision integer

      The rule revision number.

    • rule_type_id string Required

      The identifier for the type of rule. For example, .es-query, .index-threshold, logs.alert.document.count, monitoring_alert_cluster_health, siem.thresholdRule, or xpack.ml.anomaly_detection_alert.

    • running boolean

      Indicates whether the rule is running.

    • schedule object Required

      The check interval, which specifies how frequently the rule conditions are checked. The interval is specified in seconds, minutes, hours, or days.

      Hide schedule attribute Show schedule attribute object
    • tags array[string] Required

      The tags for the rule.

      Default value is [] (empty).

    • throttle string | null Required Deprecated

      Deprecated in 8.13.0. Use the throttle property in the action frequency object instead. The throttle interval, which defines how often an alert generates repeated actions. NOTE: You cannot specify the throttle interval at both the rule and action level. If you set it at the rule level then update the rule in Kibana, it is automatically changed to use action-specific values.

    • updated_at string Required

      The date and time that the rule was updated most recently.

    • updated_by string | null Required

      The identifier for the user that updated this rule most recently.

  • 401 application/json; Elastic-Api-Version=2023-10-31

    Authorization information is missing or invalid.

    Hide response attributes Show response attributes object
  • 404 application/json; Elastic-Api-Version=2023-10-31

    Object is not found.

    Hide response attributes Show response attributes object
GET /api/alerting/rule/{ruleId}
curl \
 -X GET https://localhost:5601/api/alerting/rule/ac4e6b90-6be7-11eb-ba0d-9b1c1f912d74
Response examples (200)
{
  "id": "31697a40-7b36-11ed-aa79-f742c05329b2",
  "name": "my alert",
  "tags": [
    "cpu"
  ],
  "params": {
    "index": [
      "test-index"
    ],
    "aggType": "avg",
    "groupBy": "top",
    "aggField": "sheet.version",
    "termSize": 6,
    "termField": "name.keyword",
    "threshold": [
      1000
    ],
    "timeField": "@timestamp",
    "timeWindowSize": 5,
    "timeWindowUnit": "m",
    "thresholdComparator": ">"
  },
  "actions": [
    {
      "id": "1007a0c0-7a6e-11ed-89d5-abec321c0def",
      "uuid": "1c7a1280-f28c-4e06-96b2-e4e5f05d1d61",
      "group": "threshold met",
      "params": {
        "level": "info",
        "message": "Rule {{rule.name}} is active for group {{context.group}}:\n\n- Value: {{context.value}}\n- Conditions Met: {{context.conditions}} over {{rule.params.timeWindowSize}}{{rule.params.timeWindowUnit}}\n- Timestamp: {{context.date}",
        "connector_type_id": ".server-log"
      },
      "frequency": {
        "summary": false,
        "throttle": null,
        "notify_when": "onActionGroupChange"
      },
      "connector_type_id": ".server-log"
    }
  ],
  "enabled": true,
  "consumer": "alerts",
  "last_run": {
    "outcome": "succeeded",
    "warning": null,
    "outcome_msg": null,
    "alerts_count": {
      "new": 0,
      "active": 0,
      "ignored": 0,
      "recovered": 0
    }
  },
  "mute_all": false,
  "next_run": "2022-12-13T22:34:44.314Z",
  "revision": 1,
  "schedule": {
    "interval": "1m"
  },
  "throttle": null,
  "created_at": "2022-12-13T22:33:41.163Z",
  "created_by": "elastic",
  "updated_at": "2022-12-13T22:33:41.163Z",
  "updated_by": "elastic",
  "notify_when": null,
  "rule_type_id": ".index-threshold",
  "api_key_owner": "elastic",
  "muted_alert_ids": [],
  "execution_status": {
    "status": "ok",
    "last_duration": 83,
    "last_execution_date": "2022-12-13T22:33:44.388Z"
  },
  "scheduled_task_id": "31697a40-7b36-11ed-aa79-f742c05329b2",
  "api_key_created_by_user": false
}
Response examples (401)
{
  "error": "Unauthorized",
  "message": "string",
  "statusCode": 401
}
Response examples (404)
{
  "error": "Not Found",
  "message": "Saved object [alert/caaad6d0-920c-11ed-b36a-874bd1548a00] not found",
  "statusCode": 404
}