Services

Get services.

get
Authorizations
Query parameters
start-indexinteger · int32Optional

an integer specifying the starting point (beginning with 0) when paging through a list of entities

Default: 0
max-resultsinteger · int32 · max: 100Optional

the maximum number of results when paging through a list of services. (Note: when using ?include maximum is reduced to 25)

Default: 10
Responses
200
The services
application/json
get
GET /api/services HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
200

The services

[
  {
    "id": 1,
    "name": "text",
    "status": "OPERATIONAL",
    "description": "text",
    "oneOpenIncidentOnly": true,
    "showUptimeHistory": true,
    "teams": [
      {
        "id": 1,
        "name": "text"
      }
    ],
    "subscribed": true,
    "uptime": {
      "rangeStart": "2025-07-08T11:08:35.452Z",
      "rangeEnd": "2025-07-08T11:08:35.452Z",
      "outages": [
        {
          "status": "OPERATIONAL",
          "from": "2025-07-08T11:08:35.452Z",
          "until": "2025-07-08T11:08:35.452Z"
        }
      ],
      "uptimePercentage": {
        "uptimePercentage": {
          "p90": 1,
          "p60": 1,
          "p30": 1
        }
      }
    },
    "incidents": [
      {
        "id": 1,
        "summary": "text",
        "status": "INVESTIGATING",
        "message": "text",
        "sendNotification": true,
        "createdAt": "2025-07-08T11:08:35.452Z",
        "updatedAt": "2025-07-08T11:08:35.452Z",
        "affectedServices": [
          {
            "impact": "OPERATIONAL",
            "service": {
              "id": 1,
              "name": "text",
              "status": "OPERATIONAL",
              "description": "text",
              "oneOpenIncidentOnly": true,
              "showUptimeHistory": true,
              "teams": [
                {
                  "id": 1,
                  "name": "text"
                }
              ]
            }
          }
        ],
        "resolvedOn": "2025-07-08T11:08:35.452Z"
      }
    ]
  }
]

Create a new service.

post
Authorizations
Body
idnumberOptional
namestringOptional
statusstring · enumOptional

the service status

Possible values:
descriptionstringOptional
oneOpenIncidentOnlybooleanOptional
showUptimeHistorybooleanOptional
Responses
200
The newly created service
application/json
post
POST /api/services HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 151

{
  "id": 1,
  "name": "text",
  "status": "OPERATIONAL",
  "description": "text",
  "oneOpenIncidentOnly": true,
  "showUptimeHistory": true,
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ]
}
200

The newly created service

{
  "id": 1,
  "name": "text",
  "status": "OPERATIONAL",
  "description": "text",
  "oneOpenIncidentOnly": true,
  "showUptimeHistory": true,
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ]
}

Get a specific service.

get
Authorizations
Path parameters
idnumberRequired

entity ID

Query parameters
Responses
200
The requested service
application/json
get
GET /api/services/{id} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
200

The requested service

{
  "id": 1,
  "name": "text",
  "status": "OPERATIONAL",
  "description": "text",
  "oneOpenIncidentOnly": true,
  "showUptimeHistory": true,
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ],
  "subscribed": true,
  "uptime": {
    "rangeStart": "2025-07-08T11:08:35.452Z",
    "rangeEnd": "2025-07-08T11:08:35.452Z",
    "outages": [
      {
        "status": "OPERATIONAL",
        "from": "2025-07-08T11:08:35.452Z",
        "until": "2025-07-08T11:08:35.452Z"
      }
    ],
    "uptimePercentage": {
      "uptimePercentage": {
        "p90": 1,
        "p60": 1,
        "p30": 1
      }
    }
  },
  "incidents": [
    {
      "id": 1,
      "summary": "text",
      "status": "INVESTIGATING",
      "message": "text",
      "sendNotification": true,
      "createdAt": "2025-07-08T11:08:35.452Z",
      "updatedAt": "2025-07-08T11:08:35.452Z",
      "affectedServices": [
        {
          "impact": "OPERATIONAL",
          "service": {
            "id": 1,
            "name": "text",
            "status": "OPERATIONAL",
            "description": "text",
            "oneOpenIncidentOnly": true,
            "showUptimeHistory": true,
            "teams": [
              {
                "id": 1,
                "name": "text"
              }
            ]
          }
        }
      ],
      "resolvedOn": "2025-07-08T11:08:35.452Z"
    }
  ]
}

Update the specific service

put
Authorizations
Path parameters
idnumberRequired

entity ID

Body
idnumberOptional
namestringOptional
statusstring · enumOptional

the service status

Possible values:
descriptionstringOptional
oneOpenIncidentOnlybooleanOptional
showUptimeHistorybooleanOptional
Responses
200
The updated service
application/json
put
PUT /api/services/{id} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 151

{
  "id": 1,
  "name": "text",
  "status": "OPERATIONAL",
  "description": "text",
  "oneOpenIncidentOnly": true,
  "showUptimeHistory": true,
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ]
}
200

The updated service

{
  "id": 1,
  "name": "text",
  "status": "OPERATIONAL",
  "description": "text",
  "oneOpenIncidentOnly": true,
  "showUptimeHistory": true,
  "teams": [
    {
      "id": 1,
      "name": "text"
    }
  ]
}

Remove a specific service.

delete
Authorizations
Path parameters
idnumberRequired

entity ID

Responses
204
Empty body delete response
delete
DELETE /api/services/{id} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
204

Empty body delete response

No content

Get the subscribers (users and teams) of a service

get
Authorizations
Path parameters
idnumberRequired

entity ID

Responses
200
The subscribers of the service
application/json
get
GET /api/services/{id}/private-subscribers HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
200

The subscribers of the service

[
  {
    "id": 1,
    "name": "text",
    "type": "USER"
  }
]

Set subscribers (users and teams) of a service

put

Note: this is an in place update

Authorizations
Path parameters
idnumberRequired

entity ID

Bodyobject[]
idnumberOptional
namestringOptional
typestring · enumOptionalPossible values:
Responses
204
the response
put
PUT /api/services/{id}/private-subscribers HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 38

[
  {
    "id": 1,
    "name": "text",
    "type": "USER"
  }
]
204

the response

No content

Was this helpful?