Services
The Bearer API key of your user more info.
an integer specifying the starting point (beginning with 0) when paging through a list of entities
0the maximum number of results when paging through a list of services. (Note: when using ?include maximum is reduced to 25)
10The services
the service status
GET /api/services HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
The services
[
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
],
"subscribed": true,
"uptime": {
"rangeStart": "2026-01-01T00:00:00.000Z",
"rangeEnd": "2026-01-01T00:00:00.000Z",
"outages": [
{
"status": "OPERATIONAL",
"from": "2026-01-01T00:00:00.000Z",
"until": "2026-01-01T00:00:00.000Z"
}
],
"uptimePercentage": {
"uptimePercentage": {
"p90": 1,
"p60": 1,
"p30": 1
}
}
},
"incidents": [
{
"id": 1,
"summary": "text",
"status": "INVESTIGATING",
"message": "text",
"sendNotification": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z",
"affectedServices": [
{
"impact": "OPERATIONAL",
"service": {
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}
}
],
"resolvedOn": "2026-01-01T00:00:00.000Z"
}
]
}
]The Bearer API key of your user more info.
the service status
The newly created service
the service status
POST /api/services HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 166
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}The newly created service
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}The Bearer API key of your user more info.
entity ID
The requested service
the service status
GET /api/services/{id} HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
The requested service
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
],
"subscribed": true,
"uptime": {
"rangeStart": "2026-01-01T00:00:00.000Z",
"rangeEnd": "2026-01-01T00:00:00.000Z",
"outages": [
{
"status": "OPERATIONAL",
"from": "2026-01-01T00:00:00.000Z",
"until": "2026-01-01T00:00:00.000Z"
}
],
"uptimePercentage": {
"uptimePercentage": {
"p90": 1,
"p60": 1,
"p30": 1
}
}
},
"incidents": [
{
"id": 1,
"summary": "text",
"status": "INVESTIGATING",
"message": "text",
"sendNotification": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z",
"affectedServices": [
{
"impact": "OPERATIONAL",
"service": {
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}
}
],
"resolvedOn": "2026-01-01T00:00:00.000Z"
}
]
}The Bearer API key of your user more info.
entity ID
the service status
The updated service
the service status
PUT /api/services/{id} HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 166
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}The updated service
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}The Bearer API key of your user more info.
entity ID
Empty body delete response
DELETE /api/services/{id} HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
Empty body delete response
No content
Makes the latest status change of the service visible on status pages, when it was kept internal. The API reports such a change by returning a 'publicStatus' that differs from 'status'. The 'status' query param must match the current status of the service and the status of its latest change, otherwise nothing is published and the request is rejected with 409, so a status change that happened in the meantime is never published by accident.
The Bearer API key of your user more info.
entity ID
the service status
The service whose latest status change is now public
the service status
The latest status change of the service is not an internal change to the given status
PUT /api/services/{id}/publish-status?status=OPERATIONAL HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
{
"id": 1,
"name": "text",
"alias": "text",
"status": "OPERATIONAL",
"description": "text",
"oneOpenIncidentOnly": true,
"showUptimeHistory": true,
"teams": [
{
"id": 1,
"name": "text"
}
]
}The Bearer API key of your user more info.
entity ID
The subscribers of the service
GET /api/services/{id}/private-subscribers HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
The subscribers of the service
[
{
"id": 1,
"name": "text",
"type": "USER"
}
]Note: this is an in place update
The Bearer API key of your user more info.
entity ID
the response
PUT /api/services/{id}/private-subscribers HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 38
[
{
"id": 1,
"name": "text",
"type": "USER"
}
]the response
No content
Last updated
Was this helpful?