Heartbeat Monitors

List heartbeat monitors.

get

This resource uses a 'cursor' to paginate. 'start-index' has no effect here.

Authorizations
AuthorizationstringRequired

The Bearer API key of your user more info.

Query parameters
cursorstringOptional

A cursor identifying the current position in the pagination, leave empty to start at the first item, each call returns a 'next-cursor' header for the next page, do not alter the cursor yourself.

Default: null
max-resultsinteger · int32 · max: 200Optional

The maximum number of results when paging through a list of heartbeat monitors.

Default: 100
Responses
200

The heartbeat monitor objects

application/json
get
/heartbeat-monitors
GET /api/heartbeat-monitors HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
200

The heartbeat monitor objects

[
  {
    "id": 1,
    "name": "text",
    "state": "UNKNOWN",
    "intervalSec": 1,
    "alertSummary": "text",
    "createdAt": "text",
    "updatedAt": "text",
    "teams": [
      {
        "id": 1,
        "name": "text"
      }
    ]
  }
]

Create a new heartbeat monitor.

post

The 'integrationKey' field cannot be set as it is generated automatically. Note: if you are building installation scripts for your hosts, you may send deterministic names and ?include=integrationUrl to still return the 'response.body.integrationUrl' field on 409 (already existing resource) conflict responses. This allows you to run installations with a simple single POST request.

Authorizations
AuthorizationstringRequired

The Bearer API key of your user more info.

Query parameters
Body
namestringRequired
intervalSecinteger · int32 · min: 25 · max: 2678400Required

We recommend using an interval between 3 and 5 minutes, while pinging every 60 seconds. Of course if you are tracking use-cases like backup jobs that run once a week, a larger timeout and less pings suffice.

alertSummarystringOptional
Responses
post
/heartbeat-monitors
POST /api/heartbeat-monitors HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 76

{
  "name": "text",
  "intervalSec": 1,
  "alertSummary": "text",
  "alertSource": {
    "id": 1
  }
}
{
  "id": 1,
  "name": "text",
  "state": "UNKNOWN",
  "intervalSec": 1,
  "alertSummary": "text",
  "createdAt": "text",
  "updatedAt": "text",
  "alertSource": {
    "id": 1,
    "teams": [
      {
        "id": 1,
        "name": "text"
      }
    ],
    "name": "text",
    "iconUrl": "text",
    "lightIconUrl": "text",
    "darkIconUrl": "text",
    "escalationPolicy": {
      "id": 1,
      "name": "text",
      "escalationRules": [
        {
          "escalationTimeout": 1,
          "user": {
            "id": 1
          },
          "schedule": {
            "id": 1
          },
          "users": [
            {
              "id": 1,
              "firstName": "text",
              "lastName": "text"
            }
          ],
          "schedules": [
            {
              "id": 1,
              "name": "text",
              "type": "STATIC"
            }
          ]
        }
      ],
      "teams": [
        {
          "id": 1,
          "name": "text"
        }
      ],
      "repeating": false,
      "frequency": 1,
      "delayMin": 0,
      "routingKey": "text"
    },
    "integrationType": "NAGIOS",
    "integrationKey": "text",
    "integrationUrl": "text",
    "autoResolutionTimeout": "text",
    "alertGroupingWindow": "text",
    "alertCreation": "ONE_ALERT_PER_EMAIL",
    "status": "PENDING",
    "active": true,
    "alertPriorityRule": "HIGH",
    "supportHours": {
      "id": 1
    },
    "bidirectional": true,
    "summaryTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "detailsTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "routingTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "linkTemplates": [
      {
        "text": "text",
        "hrefTemplate": {
          "textTemplate": "text",
          "elements": [
            {
              "type": "TEXT",
              "val": "text",
              "func": "text",
              "args": [
                {
                  "S": "text",
                  "N": 1
                }
              ]
            }
          ]
        }
      }
    ],
    "priorityTemplate": {
      "valueTemplate": {
        "textTemplate": "text",
        "elements": [
          {
            "type": "TEXT",
            "val": "text",
            "func": "text",
            "args": [
              {
                "S": "text",
                "N": 1
              }
            ]
          }
        ]
      },
      "mappings": [
        {
          "value": "text",
          "priority": "LOW"
        }
      ]
    },
    "eventFilter": "text",
    "alertKeyTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "eventTypeFilterCreate": "text",
    "eventTypeFilterAccept": "text",
    "eventTypeFilterResolve": "text"
  },
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ],
  "integrationKey": "text",
  "integrationUrl": "text"
}

Get the heartbeat monitor with specified id.

get
Authorizations
AuthorizationstringRequired

The Bearer API key of your user more info.

Path parameters
idstringRequired

numeric entity id

Query parameters
Responses
200

the heartbeat monitor object

application/json
get
/heartbeat-monitors/{id}
GET /api/heartbeat-monitors/{id} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
200

the heartbeat monitor object

{
  "id": 1,
  "name": "text",
  "state": "UNKNOWN",
  "intervalSec": 1,
  "alertSummary": "text",
  "createdAt": "text",
  "updatedAt": "text",
  "alertSource": {
    "id": 1,
    "teams": [
      {
        "id": 1,
        "name": "text"
      }
    ],
    "name": "text",
    "iconUrl": "text",
    "lightIconUrl": "text",
    "darkIconUrl": "text",
    "escalationPolicy": {
      "id": 1,
      "name": "text",
      "escalationRules": [
        {
          "escalationTimeout": 1,
          "user": {
            "id": 1
          },
          "schedule": {
            "id": 1
          },
          "users": [
            {
              "id": 1,
              "firstName": "text",
              "lastName": "text"
            }
          ],
          "schedules": [
            {
              "id": 1,
              "name": "text",
              "type": "STATIC"
            }
          ]
        }
      ],
      "teams": [
        {
          "id": 1,
          "name": "text"
        }
      ],
      "repeating": false,
      "frequency": 1,
      "delayMin": 0,
      "routingKey": "text"
    },
    "integrationType": "NAGIOS",
    "integrationKey": "text",
    "integrationUrl": "text",
    "autoResolutionTimeout": "text",
    "alertGroupingWindow": "text",
    "alertCreation": "ONE_ALERT_PER_EMAIL",
    "status": "PENDING",
    "active": true,
    "alertPriorityRule": "HIGH",
    "supportHours": {
      "id": 1
    },
    "bidirectional": true,
    "summaryTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "detailsTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "routingTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "linkTemplates": [
      {
        "text": "text",
        "hrefTemplate": {
          "textTemplate": "text",
          "elements": [
            {
              "type": "TEXT",
              "val": "text",
              "func": "text",
              "args": [
                {
                  "S": "text",
                  "N": 1
                }
              ]
            }
          ]
        }
      }
    ],
    "priorityTemplate": {
      "valueTemplate": {
        "textTemplate": "text",
        "elements": [
          {
            "type": "TEXT",
            "val": "text",
            "func": "text",
            "args": [
              {
                "S": "text",
                "N": 1
              }
            ]
          }
        ]
      },
      "mappings": [
        {
          "value": "text",
          "priority": "LOW"
        }
      ]
    },
    "eventFilter": "text",
    "alertKeyTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "eventTypeFilterCreate": "text",
    "eventTypeFilterAccept": "text",
    "eventTypeFilterResolve": "text"
  },
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ],
  "integrationKey": "text",
  "integrationUrl": "text"
}

Update an existing heartbeat monitor.

put

ATTENTION: changing 'intervalSec' will regenerate the 'integrationKey', you will have to update your monitoring integrations.

Authorizations
AuthorizationstringRequired

The Bearer API key of your user more info.

Path parameters
idnumberRequired

entity ID

Body
namestringRequired
intervalSecinteger · int32 · min: 25 · max: 2678400Required

We recommend using an interval between 3 and 5 minutes, while pinging every 60 seconds. Of course if you are tracking use-cases like backup jobs that run once a week, a larger timeout and less pings suffice.

alertSummarystringOptional
Responses
200

the updated heartbeat monitor object

application/json
put
/heartbeat-monitors/{id}
PUT /api/heartbeat-monitors/{id} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 76

{
  "name": "text",
  "intervalSec": 1,
  "alertSummary": "text",
  "alertSource": {
    "id": 1
  }
}
200

the updated heartbeat monitor object

{
  "id": 1,
  "name": "text",
  "state": "UNKNOWN",
  "intervalSec": 1,
  "alertSummary": "text",
  "createdAt": "text",
  "updatedAt": "text",
  "alertSource": {
    "id": 1,
    "teams": [
      {
        "id": 1,
        "name": "text"
      }
    ],
    "name": "text",
    "iconUrl": "text",
    "lightIconUrl": "text",
    "darkIconUrl": "text",
    "escalationPolicy": {
      "id": 1,
      "name": "text",
      "escalationRules": [
        {
          "escalationTimeout": 1,
          "user": {
            "id": 1
          },
          "schedule": {
            "id": 1
          },
          "users": [
            {
              "id": 1,
              "firstName": "text",
              "lastName": "text"
            }
          ],
          "schedules": [
            {
              "id": 1,
              "name": "text",
              "type": "STATIC"
            }
          ]
        }
      ],
      "teams": [
        {
          "id": 1,
          "name": "text"
        }
      ],
      "repeating": false,
      "frequency": 1,
      "delayMin": 0,
      "routingKey": "text"
    },
    "integrationType": "NAGIOS",
    "integrationKey": "text",
    "integrationUrl": "text",
    "autoResolutionTimeout": "text",
    "alertGroupingWindow": "text",
    "alertCreation": "ONE_ALERT_PER_EMAIL",
    "status": "PENDING",
    "active": true,
    "alertPriorityRule": "HIGH",
    "supportHours": {
      "id": 1
    },
    "bidirectional": true,
    "summaryTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "detailsTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "routingTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "linkTemplates": [
      {
        "text": "text",
        "hrefTemplate": {
          "textTemplate": "text",
          "elements": [
            {
              "type": "TEXT",
              "val": "text",
              "func": "text",
              "args": [
                {
                  "S": "text",
                  "N": 1
                }
              ]
            }
          ]
        }
      }
    ],
    "priorityTemplate": {
      "valueTemplate": {
        "textTemplate": "text",
        "elements": [
          {
            "type": "TEXT",
            "val": "text",
            "func": "text",
            "args": [
              {
                "S": "text",
                "N": 1
              }
            ]
          }
        ]
      },
      "mappings": [
        {
          "value": "text",
          "priority": "LOW"
        }
      ]
    },
    "eventFilter": "text",
    "alertKeyTemplate": {
      "textTemplate": "text",
      "elements": [
        {
          "type": "TEXT",
          "val": "text",
          "func": "text",
          "args": [
            {
              "S": "text",
              "N": 1
            }
          ]
        }
      ]
    },
    "eventTypeFilterCreate": "text",
    "eventTypeFilterAccept": "text",
    "eventTypeFilterResolve": "text"
  },
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ],
  "integrationKey": "text",
  "integrationUrl": "text"
}

Delete the specified heartbeat monitor.

delete
Authorizations
AuthorizationstringRequired

The Bearer API key of your user more info.

Path parameters
idnumberRequired

entity ID

Responses
delete
/heartbeat-monitors/{id}
DELETE /api/heartbeat-monitors/{id} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
204

if deletion was successful

No content

Last updated

Was this helpful?