# Services

## GET /services

> Get services.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"Service":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"alias":{"type":"string"},"status":{"$ref":"#/components/schemas/ServiceStatus"},"description":{"type":"string"},"oneOpenIncidentOnly":{"type":"boolean"},"showUptimeHistory":{"type":"boolean"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"subscribed":{"type":"boolean","readOnly":true},"uptime":{"$ref":"#/components/schemas/ServiceUptime"},"incidents":{"type":"array","description":"Note that this only contains the latest 10 unresolved incidents, use /api/incidents?service=x if more or specific results are needed","readOnly":true,"items":{"$ref":"#/components/schemas/IncidentNoIncludes"}}}},"ServiceStatus":{"type":"string","description":"the service status","enum":["OPERATIONAL","UNDER_MAINTENANCE","DEGRADED","PARTIAL_OUTAGE","MAJOR_OUTAGE"]},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"ServiceUptime":{"type":"object","properties":{"rangeStart":{"type":"string","format":"date-time"},"rangeEnd":{"type":"string","format":"date-time"},"outages":{"type":"array","items":{"$ref":"#/components/schemas/ServiceOutage"}},"uptimePercentage":{"$ref":"#/components/schemas/ServiceUptimePercentage"}}},"ServiceOutage":{"type":"object","properties":{"status":{"$ref":"#/components/schemas/ServiceStatus"},"from":{"type":"string","format":"date-time"},"until":{"type":"string","format":"date-time"}}},"ServiceUptimePercentage":{"type":"object","properties":{"uptimePercentage":{"type":"object","properties":{"p90":{"maximum":100,"minimum":0,"type":"number","format":"float","readOnly":true},"p60":{"maximum":100,"minimum":0,"type":"number","format":"float","readOnly":true},"p30":{"maximum":100,"minimum":0,"type":"number","format":"float","readOnly":true}}}}},"IncidentNoIncludes":{"type":"object","properties":{"id":{"type":"number"},"summary":{"type":"string"},"status":{"$ref":"#/components/schemas/IncidentStatus"},"message":{"type":"string"},"sendNotification":{"type":"boolean"},"createdAt":{"type":"string","description":"May be overwritten during the creation of the incident, otherwise read-only","format":"date-time"},"updatedAt":{"type":"string","description":"May be overwritten during the creation of the incident, otherwise read-only","format":"date-time"},"affectedServices":{"type":"array","items":{"type":"object","properties":{"impact":{"$ref":"#/components/schemas/ServiceStatus"},"service":{"$ref":"#/components/schemas/ServiceNoIncludes"}}}},"resolvedOn":{"type":"string","format":"date-time","readOnly":true}}},"IncidentStatus":{"type":"string","description":"the incident status","enum":["INVESTIGATING","IDENTIFIED","MONITORING","RESOLVED"]},"ServiceNoIncludes":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"alias":{"type":"string"},"status":{"$ref":"#/components/schemas/ServiceStatus"},"description":{"type":"string"},"oneOpenIncidentOnly":{"type":"boolean"},"showUptimeHistory":{"type":"boolean"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}}}}}},"paths":{"/services":{"get":{"tags":["Services"],"summary":"Get services.","parameters":[{"name":"start-index","in":"query","description":"an integer specifying the starting point (beginning with 0) when paging through a list of entities","schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"the maximum number of results when paging through a list of services. (Note: when using ?include maximum is reduced to 25)","schema":{"maximum":100,"type":"integer","format":"int32","default":10}},{"name":"include","in":"query","description":"Describes optional properties that should be included in the response. You may declare multiple. (subscribed, uptime, incidents)","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["subscribed","uptime","incidents"]}}}],"responses":{"200":{"description":"The services","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Service"}}}}}}}}}}
```

## POST /services

> Create a new service.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"ServiceNoIncludes":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"alias":{"type":"string"},"status":{"$ref":"#/components/schemas/ServiceStatus"},"description":{"type":"string"},"oneOpenIncidentOnly":{"type":"boolean"},"showUptimeHistory":{"type":"boolean"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}}}},"ServiceStatus":{"type":"string","description":"the service status","enum":["OPERATIONAL","UNDER_MAINTENANCE","DEGRADED","PARTIAL_OUTAGE","MAJOR_OUTAGE"]},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}}}},"paths":{"/services":{"post":{"tags":["Services"],"summary":"Create a new service.","requestBody":{"description":"the service","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceNoIncludes"}}},"required":true},"responses":{"200":{"description":"The newly created service","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceNoIncludes"}}}}}}}}}
```

## GET /services/{id}

> Get a specific service.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"Service":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"alias":{"type":"string"},"status":{"$ref":"#/components/schemas/ServiceStatus"},"description":{"type":"string"},"oneOpenIncidentOnly":{"type":"boolean"},"showUptimeHistory":{"type":"boolean"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"subscribed":{"type":"boolean","readOnly":true},"uptime":{"$ref":"#/components/schemas/ServiceUptime"},"incidents":{"type":"array","description":"Note that this only contains the latest 10 unresolved incidents, use /api/incidents?service=x if more or specific results are needed","readOnly":true,"items":{"$ref":"#/components/schemas/IncidentNoIncludes"}}}},"ServiceStatus":{"type":"string","description":"the service status","enum":["OPERATIONAL","UNDER_MAINTENANCE","DEGRADED","PARTIAL_OUTAGE","MAJOR_OUTAGE"]},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"ServiceUptime":{"type":"object","properties":{"rangeStart":{"type":"string","format":"date-time"},"rangeEnd":{"type":"string","format":"date-time"},"outages":{"type":"array","items":{"$ref":"#/components/schemas/ServiceOutage"}},"uptimePercentage":{"$ref":"#/components/schemas/ServiceUptimePercentage"}}},"ServiceOutage":{"type":"object","properties":{"status":{"$ref":"#/components/schemas/ServiceStatus"},"from":{"type":"string","format":"date-time"},"until":{"type":"string","format":"date-time"}}},"ServiceUptimePercentage":{"type":"object","properties":{"uptimePercentage":{"type":"object","properties":{"p90":{"maximum":100,"minimum":0,"type":"number","format":"float","readOnly":true},"p60":{"maximum":100,"minimum":0,"type":"number","format":"float","readOnly":true},"p30":{"maximum":100,"minimum":0,"type":"number","format":"float","readOnly":true}}}}},"IncidentNoIncludes":{"type":"object","properties":{"id":{"type":"number"},"summary":{"type":"string"},"status":{"$ref":"#/components/schemas/IncidentStatus"},"message":{"type":"string"},"sendNotification":{"type":"boolean"},"createdAt":{"type":"string","description":"May be overwritten during the creation of the incident, otherwise read-only","format":"date-time"},"updatedAt":{"type":"string","description":"May be overwritten during the creation of the incident, otherwise read-only","format":"date-time"},"affectedServices":{"type":"array","items":{"type":"object","properties":{"impact":{"$ref":"#/components/schemas/ServiceStatus"},"service":{"$ref":"#/components/schemas/ServiceNoIncludes"}}}},"resolvedOn":{"type":"string","format":"date-time","readOnly":true}}},"IncidentStatus":{"type":"string","description":"the incident status","enum":["INVESTIGATING","IDENTIFIED","MONITORING","RESOLVED"]},"ServiceNoIncludes":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"alias":{"type":"string"},"status":{"$ref":"#/components/schemas/ServiceStatus"},"description":{"type":"string"},"oneOpenIncidentOnly":{"type":"boolean"},"showUptimeHistory":{"type":"boolean"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}}}}}},"paths":{"/services/{id}":{"get":{"tags":["Services"],"summary":"Get a specific service.","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}},{"name":"include","in":"query","description":"Describes optional properties that should be included in the response. You may declare multiple. (subscribed, uptime, incidents)","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["subscribed","uptime","incidents"]}}}],"responses":{"200":{"description":"The requested service","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Service"}}}}}}}}}
```

## PUT /services/{id}

> Update the specific service

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"ServiceNoIncludes":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"alias":{"type":"string"},"status":{"$ref":"#/components/schemas/ServiceStatus"},"description":{"type":"string"},"oneOpenIncidentOnly":{"type":"boolean"},"showUptimeHistory":{"type":"boolean"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}}}},"ServiceStatus":{"type":"string","description":"the service status","enum":["OPERATIONAL","UNDER_MAINTENANCE","DEGRADED","PARTIAL_OUTAGE","MAJOR_OUTAGE"]},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}}}},"paths":{"/services/{id}":{"put":{"tags":["Services"],"summary":"Update the specific service","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"requestBody":{"description":"the service","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceNoIncludes"}}},"required":true},"responses":{"200":{"description":"The updated service","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceNoIncludes"}}}}}}}}}
```

## DELETE /services/{id}

> Remove a specific service.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}}},"paths":{"/services/{id}":{"delete":{"tags":["Services"],"summary":"Remove a specific service.","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"responses":{"204":{"description":"Empty body delete response","content":{}}}}}}}
```

## GET /services/{id}/private-subscribers

> Get the subscribers (users and teams) of a service

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"TeamUserOption":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"type":{"type":"string","enum":["USER","TEAM"]}}}}},"paths":{"/services/{id}/private-subscribers":{"get":{"tags":["Services"],"summary":"Get the subscribers (users and teams) of a service","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"responses":{"200":{"description":"The subscribers of the service","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TeamUserOption"}}}}}}}}}}
```

## Set subscribers (users and teams) of a service

> Note: this is an in place update

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.5-r.3"},"tags":[{"name":"Services"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"TeamUserOption":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"type":{"type":"string","enum":["USER","TEAM"]}}}}},"paths":{"/services/{id}/private-subscribers":{"put":{"tags":["Services"],"summary":"Set subscribers (users and teams) of a service","description":"Note: this is an in place update","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"requestBody":{"description":"subscribers that should be adjusted","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TeamUserOption"}}}},"required":true},"responses":{"204":{"description":"the response","content":{}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ilert.com/developer-docs/rest-api/api-reference/services.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
