OpsGenie · Schema

OpsGenie Heartbeat

Represents a heartbeat monitor that tracks the health and availability of systems and services. When a monitored system fails to send a ping within the configured interval, OpsGenie generates an alert.

AlertsIncident ManagementMonitoringOn-CallOperations

Properties

Name Type Description
name string Name of the heartbeat monitor, used as its identifier.
description string Description of what the heartbeat monitors.
interval integer Expected ping interval duration.
intervalUnit string Unit for the ping interval.
enabled boolean Whether the heartbeat is currently active.
expired boolean Whether the heartbeat has missed its expected ping window.
lastPingTime string Date and time of the last successful ping.
ownerTeam object Team that owns the heartbeat.
alertMessage string Custom message for the alert generated when the heartbeat expires.
alertTags array Tags added to the alert generated by an expired heartbeat.
alertPriority string Priority of the alert generated by an expired heartbeat.
View JSON Schema on GitHub

JSON Schema

opsgenie-heartbeat-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://schemas.api-evangelist.com/opsgenie/heartbeat.json",
  "title": "OpsGenie Heartbeat",
  "description": "Represents a heartbeat monitor that tracks the health and availability of systems and services. When a monitored system fails to send a ping within the configured interval, OpsGenie generates an alert.",
  "type": "object",
  "required": ["name", "interval", "intervalUnit", "enabled"],
  "properties": {
    "name": {
      "type": "string",
      "description": "Name of the heartbeat monitor, used as its identifier."
    },
    "description": {
      "type": "string",
      "description": "Description of what the heartbeat monitors."
    },
    "interval": {
      "type": "integer",
      "minimum": 1,
      "description": "Expected ping interval duration."
    },
    "intervalUnit": {
      "type": "string",
      "enum": ["minutes", "hours", "days"],
      "description": "Unit for the ping interval."
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether the heartbeat is currently active."
    },
    "expired": {
      "type": "boolean",
      "description": "Whether the heartbeat has missed its expected ping window."
    },
    "lastPingTime": {
      "type": "string",
      "format": "date-time",
      "description": "Date and time of the last successful ping."
    },
    "ownerTeam": {
      "type": "object",
      "description": "Team that owns the heartbeat.",
      "properties": {
        "id": {
          "type": "string",
          "description": "Team ID."
        },
        "name": {
          "type": "string",
          "description": "Team name."
        }
      }
    },
    "alertMessage": {
      "type": "string",
      "description": "Custom message for the alert generated when the heartbeat expires."
    },
    "alertTags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Tags added to the alert generated by an expired heartbeat."
    },
    "alertPriority": {
      "type": "string",
      "enum": ["P1", "P2", "P3", "P4", "P5"],
      "description": "Priority of the alert generated by an expired heartbeat."
    }
  }
}