openapi: 3.0.1
info:
title: ilert REST Alert Actions Alerts API
description: "# Introduction\nThe ilert API is a [RESTful](https://en.wikipedia.org/wiki/Representational_state_transfer) API and provides programmatic access to entities in ilert and lets you easily integrate ilert with 3rd party tools. If you are looking to develop an inbound integration (e.g. for a monitoring tool), please use our [Events API](#tag/events). \n\nThe API supports the JSON content type for requests and responses. The response content type is requested via the HTTP Accept header (`application/json`). All resources are accessible via https and are located at `api.ilert.com/api`. \n\n You may download ilert's latest [OpenAPI.json {...} here](https://api.ilert.com/api-docs/openapi.json).\n\n If you are looking for a classic Swagger-UI view you may also open [this link](https://api.ilert.com/api-docs/swagger-ui). \n\n ## Authentication\nThe REST API accepts bearer API tokens. Each user may create API keys using the ilert web application. Note: Make sure to send the `Bearer ` prefix e.g. `Bearer APIKEY` when sending api key requests. By default, access to all resources (using any method) requires the client to be authenticated.\n\n ## Team Context\n When using API tokens, the currently selected team context of the user will not be taken into account, i.e. list results will always return all entities to which the user has a view permission. When using basic auth credentials the currently selected team context of the user will be used to filter resource results. The context may be overwritten for API key calls using the `team-context` HTTP header. Specifying `0` for ALL teams, `-1` for MY teams or a specific team id e.g. `team-context=901` to fetch results for a certain team. \n\n ## Errors\nilert uses HTTP response codes to indicate success or failure of an API request. Codes in the 2xx range indicate success, codes in the 4xx range indicate a client error (e.g. a missing required parameter) and codes in the 5xx range indicate an error with ilert's servers. In case of an error, the response body contains the following information:\n\n Attribute | Description \n ------------- | ------------- \n status | the corresponsing HTTP status code \n message | a human readable description of the error \n code | error code, used to identify error type \n\n ## API Versioning\nChanges to our API are always backwards-compatible. To get more information about our API versioning and historical changes, please take a look here."
version: v2.2026.5-r.3
x-logo:
url: ./ilert-logo-spaced.png
backgroundColor: '#fafafa'
altText: ilert documentation logo
servers:
- url: /api
security:
- apiKey: []
tags:
- name: Alerts
paths:
/alerts:
get:
tags:
- Alerts
summary: List alerts (optionally matching certain criteria that are specified by query parameters).
description: "**Sample URLs**\n* List only alerts that are either in state `PENDING` or `ACCEPTED`:
https://api.ilert.com/api/alerts?states=PENDING&states=ACCEPTED\n* List only alerts that belong to the alert source with ID `1243` or `1743` and where user `jd` is a responder:
\n https://api.ilert.com/api/alerts?sources=1243&sources=1743&responders=jd\n* Paginate first batch for a range of alerts (note: query parameters should be url encoded):
\n https://api.ilert.com/api/alerts?start-index=0&max-results=100&from=2021-03-01T21:24:56.771Z&until=2021-04-01T21:24:56.771Z\n* Fetch next page, assuming equal to max-results were returned:
\n https://api.ilert.com/api/alerts?start-index=100&max-results=100&from=2021-03-01T21:24:56.771Z&until=2021-04-01T21:24:56.771Z\n* Pagination should be done based on the `reportTime` field using the parameters `from` and `until` as well as `start-index`. When building a local alert state store the `id` field should be used as identifier. The `alertKey` field is not suitable for this, as it is used to group related alerts to each other."
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 entities.
schema:
maximum: 100
type: integer
format: int32
default: 50
- name: include
in: query
description: Describes optional properties that should be included in the response. You may declare multiple. (nextEscalationUser)
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- nextEscalationUser
- name: states
in: query
description: state of the alert
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- PENDING
- ACCEPTED
- RESOLVED
- name: sources
in: query
description: alert source IDs of the alert's alert source
style: form
explode: true
schema:
type: array
items:
type: integer
format: int64
- name: policies
in: query
description: escalation policy IDs of the alert's escalation policy
style: form
explode: true
schema:
type: array
items:
type: integer
format: int64
- name: responders
in: query
description: user ids of the user that is a responder of the alert
style: form
explode: true
schema:
type: array
items:
type: string
- name: from
in: query
description: from date, ISO-UTC e.g. 2021-05-25T21:24:56.771Z, based on reportTime
schema:
type: string
format: date-time
- name: until
in: query
description: until date, ISO-UTC e.g. 2021-05-26T21:24:56.771Z, based on reportTime
schema:
type: string
format: date-time
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Alert'
post:
tags:
- Alerts
summary: Create alerts with customised parameters without requiring events from monitoring tools that use our Events API.
description: 'ATTENTION: do not use this endpoint to create monitoring related (or high volumes of) alerts, use ''/api/events'' instead, you have been warned! Escalation of the alert will be based on the alert source''s escalation policy or may be overridden by providing a specific escalation policy or lastly specific set of responders (users), latter will only notify the user(s) and will not escalate any further.'
requestBody:
description: the alert
content:
application/json:
schema:
$ref: '#/components/schemas/ManualAlert'
required: true
responses:
'201':
description: the created and freshly escalated alert
content:
application/json:
schema:
$ref: '#/components/schemas/Alert'
x-codegen-request-body-name: alert
/alerts/count:
get:
tags:
- Alerts
summary: Get the alert count matching the specified criteria.
parameters:
- name: states
in: query
description: state of the alert
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- PENDING
- ACCEPTED
- RESOLVED
- name: sources
in: query
description: alert source IDs of the alert's alert source
style: form
explode: true
schema:
type: array
items:
type: integer
format: int64
- name: responders
in: query
description: user ids of the user that is a responder of the alert
style: form
explode: true
schema:
type: array
items:
type: string
- name: from
in: query
description: from date
schema:
type: string
format: date-time
- name: until
in: query
description: until date
schema:
type: string
format: date-time
responses:
'200':
description: the number of alerts matching the specified criteria
content:
application/json:
schema:
$ref: '#/components/schemas/CountResponse'
/alerts/{id}:
get:
tags:
- Alerts
summary: Get the alert with the specified id.
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. (escalationRules, nextEscalationUser, customDetails)
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- escalationRules
- nextEscalationUser
- customDetails
responses:
'200':
description: alert object
content:
application/json:
schema:
$ref: '#/components/schemas/Alert'
/alerts/{id}/suggested-responders:
get:
tags:
- Alerts
summary: Get available (assignable) responders for the alert with the specified id.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
- name: lang
in: query
description: locale for response text eg. 'en' or 'de'
schema:
type: string
responses:
'200':
description: the list of alert responders
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/SuggestedResponder'
/alerts/{id}/responders:
post:
tags:
- Alerts
summary: Add an additional responder to the alert.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
responses:
'201':
description: the created alert responder object
content:
application/json:
schema:
$ref: '#/components/schemas/AlertResponder'
'404':
description: Responder did not exist
content: {}
'405':
description: Responder is already present on the alert
content: {}
/alerts/{id}/responders/{user-id}:
delete:
tags:
- Alerts
summary: Remove a responder from the alert.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
- name: user-id
in: path
description: numeric user id
required: true
schema:
type: string
responses:
'204':
description: Responder has been removed
content: {}
'404':
description: Responder did not exist
content: {}
/alerts/{id}/assign:
put:
tags:
- Alerts
summary: Assign the alert.
description: Either provide a user-id, policy-id (escalation policy) or schedule-id (on-call schedule) that the specific alert should be assigned to.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
- name: user
in: query
description: numeric user id
schema:
type: string
- name: policy
in: query
description: numeric policy id
schema:
type: string
- name: schedule
in: query
description: numeric schedule id
schema:
type: string
responses:
'200':
description: the updated alert object
content:
application/json:
schema:
$ref: '#/components/schemas/Alert'
/alerts/{id}/accept:
put:
tags:
- Alerts
summary: Accept the Alert.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
responses:
'200':
description: the updated alert object
content:
application/json:
schema:
$ref: '#/components/schemas/Alert'
/alerts/{id}/resolve:
put:
tags:
- Alerts
summary: Resolve the alert.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
responses:
'200':
description: the updated alert object
content:
application/json:
schema:
$ref: '#/components/schemas/Alert'
/alerts/{id}/notifications:
get:
tags:
- Alerts
summary: Get notifications for the specified alert.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
responses:
'200':
description: a list of notification objects
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Notification'
/alerts/{id}/log-entries:
get:
tags:
- Alerts
summary: Get log entries for the specified alert.
parameters:
- name: id
in: path
description: entity ID
required: true
schema:
type: number
- name: lang
in: query
description: log entry language
schema:
type: string
enum:
- en
- de
- 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 entities.
schema:
maximum: 100
type: integer
format: int32
default: 50
- name: include
in: query
description: Describes optional properties that should be included in the response. You may declare multiple. (vars)
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- vars
- name: filter-types
in: query
description: filter-type (group) of the log
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- NOTIFICATIONS
- ALERT_SOURCE_EVENTS
- CALL_ROUTING_EVENTS
- ALERT_UPDATES
- CONNECTOR_EVENTS
- INCIDENT_COMMUNICATIONS
responses:
'200':
description: list of log entries
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/LogEntry'
components:
schemas:
ServiceStatus:
type: string
description: the service status
enum:
- OPERATIONAL
- UNDER_MAINTENANCE
- DEGRADED
- PARTIAL_OUTAGE
- MAJOR_OUTAGE
IntegrationType:
type: string
enum:
- NAGIOS
- ICINGA
- EMAIL2
- SMS
- API
- HEARTBEAT2
- PRTG
- PINGDOM
- CLOUDWATCH
- AWSPHD
- STACKDRIVER
- INSTANA
- ZABBIX
- SOLARWINDS
- PROMETHEUS
- NEWRELIC
- GRAFANA
- GITHUB
- DATADOG
- UPTIMEROBOT
- APPDYNAMICS
- DYNATRACE
- TOPDESK
- STATUSCAKE
- MONITOR
- TOOL
- CHECKMK
- AUTOTASK
- AWSBUDGET
- SYSDIG
- SERVERDENSITY
- ZAPIER
- KENTIXAM
- JIRA
- CONSUL
- ZAMMAD
- SPLUNK
- SERVICENOW
- SEARCHGUARD
- KUBERNETES
- SIGNALFX
- AZUREALERTS
- TERRAFORMCLOUD
- SENTRY
- SEMATEXT
- SUMOLOGIC
- RAYGUN
- MXTOOLBOX
- ESWATCHER
- AMAZONSNS
- KAPACITOR
- CORTEXXSOAR
- ZENDESK
- AUVIK
- SENSU
- NCENTRAL
- JUMPCLOUD
- SALESFORCE
- GUARDDUTY
- STATUSHUB
- IXON
- APIFORTRESS
- FRESHSERVICE
- APPSIGNAL
- LIGHTSTEP
- IBMCLOUDFUNCTIONS
- CROWDSTRIKE
- HUMIO
- OHDEAR
- MONGODBATLAS
- GITLAB
- HYPERPING
- PAPRISMACLOUD
- SAMSARA
- PANDORAFMS
- MSSCOM
- TWILIO
- CISCOMERAKI
- CHECKLY
- POSTHOG
- GOOGLESCC
- SLACK
- MSTEAMS
- UPTIMEKUMA
- TWILIOERRORS
- PARTICLE
- CLOUDFLARE
- TULIP
- GRAYLOG
- CATCHPOINT
- LOKI
- CORTEX
- MIMIR
- HALOPSA
- INFLUXDB
- CALLFLOW
- HALOITSM
- KIBANA
- VICTORIAMETRICS
- HONEYCOMB
- FOURME
- KEEP
- UBIDOTS
- HETRIXTOOLS
- POSTMAN
- CLUSTERCONTROL
- NETDATA
- AWX
- KAFKA
- MQTT
- RAPIDSPIKE
- HONEYBADGER
- HEALTHCHECKSIO
- MEZMO
- SERVERGUARD24
- CISCOTHOUSANDEYES
- SITE24X7
- ITCONDUCTOR
- SAPFRUN
- APICA
- DASH0
- ROLLBAR
- GATUS
- LIBRENMS
- PANTHER
- TEAMCITY
- ALIBABACLOUD
- FLEETDM
- CONNECTWISEPSA
- DEADMANSSNITCH
- FORTISOAR
- OPMANAGER
- CRONITOR
- DOMOTZ
- LIVEWATCH
- AZUREDEVOPS
- LEVELIO
- EKARA
- SYSAID
- PHAREIO
- OPSGENIE
- WHATAP
- SIGNOZ
- GOOGLECHAT
- DOTCOMMONITOR
- UPTIME
- HELPSCOUT
- SCIENCELOGIC
- PULSETIC
- WAZUH
- SEKOIA
EscalationRule:
required:
- escalationTimeout
type: object
properties:
escalationTimeout:
type: integer
user:
type: object
properties:
id:
type: number
description: 'This field (type: User) is deprecated, please use ''users'' instead'
schedule:
type: object
properties:
id:
type: number
description: 'This field (type: Schedule) is deprecated, please use ''schedules'' instead'
team:
type: object
properties:
id:
type: number
description: 'This field (type: Team) is deprecated, please use ''teams'' instead'
users:
type: array
items:
$ref: '#/components/schemas/UserRel'
schedules:
type: array
items:
$ref: '#/components/schemas/ScheduleRel'
teams:
type: array
items:
$ref: '#/components/schemas/TeamRel'
SimpleIdField64:
required:
- id
type: object
properties:
id:
type: integer
format: int64
description: For POST and PUT requests only the id field is required for sub entities, e.g. status page -> service, alert source -> support hour
LogFilterType:
type: string
enum:
- NOTIFICATIONS
- ALERT_SOURCE_EVENTS
- CALL_ROUTING_EVENTS
- ALERT_UPDATES
- CONNECTOR_EVENTS
AlertSource:
required:
- escalationPolicy
- integrationType
- name
type: object
properties:
id:
type: integer
format: int64
teams:
type: array
items:
$ref: '#/components/schemas/TeamRel'
name:
type: string
iconUrl:
type: string
lightIconUrl:
type: string
darkIconUrl:
type: string
escalationPolicy:
$ref: '#/components/schemas/EscalationPolicy'
integrationType:
$ref: '#/components/schemas/IntegrationType'
integrationKey:
type: string
integrationUrl:
type: string
readOnly: true
autoResolutionTimeout:
type: string
format: ISO-8601
alertGroupingWindow:
type: string
format: ISO-8601
alertCreation:
type: string
default: ONE_ALERT_PER_EMAIL
enum:
- ONE_ALERT_PER_EMAIL
- ONE_ALERT_PER_EMAIL_SUBJECT
- ONE_PENDING_ALERT_ALLOWED
- ONE_OPEN_ALERT_ALLOWED
- OPEN_RESOLVE_ON_EXTRACTION
- ONE_ALERT_GROUPED_PER_WINDOW
- INTELLIGENT_GROUPING
status:
type: string
readOnly: true
enum:
- PENDING
- ALL_ACCEPTED
- ALL_RESOLVED
- IN_MAINTENANCE
- DISABLED
active:
type: boolean
default: true
alertPriorityRule:
$ref: '#/components/schemas/AlertPriorityRule'
supportHours:
$ref: '#/components/schemas/SupportHour'
bidirectional:
type: boolean
readOnly: true
summaryTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
detailsTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
routingTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
linkTemplates:
type: array
items:
$ref: '#/components/schemas/AlertSourceLinkTemplate'
priorityTemplate:
$ref: '#/components/schemas/AlertSourcePriorityTemplate'
severityTemplate:
$ref: '#/components/schemas/AlertSourceSeverityTemplate'
eventFilter:
type: string
description: 'Defines an optional event filter condition in ICL language. This is a code based implementation, more info on syntax: https://docs.ilert.com/rest-api/icl-ilert-condition-language. For block based configuration please use the web UI. It has no effect on manually created alerts. Note: this field is an ?include, it will not appear in lists.'
alertKeyTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
servicesTemplate:
type: array
description: 'Optional list of templates that extract service identifiers from the inbound event payload. Each rendered value is comma-split, and each resulting token is resolved against the tenant''s services by alias or name (case-insensitive). Unmatched tokens are silently dropped. Capped at 10 templates and at the alert''s per-event services limit. Note: this field is an ?include, it will not appear in lists.'
items:
$ref: '#/components/schemas/AlertSourceTemplate'
eventTypeFilterCreate:
type: string
description: 'Defines an optional create alert rule in ICL language. This is a code based implementation, more info on syntax: https://docs.ilert.com/rest-api/icl-ilert-condition-language. For block based configuration please use the web UI. It has no effect on manually created alerts. Note: this field is an ?include, it will not appear in lists.'
eventTypeFilterAccept:
type: string
description: 'Defines an optional accept alert rule in ICL language This is a code based implementation, more info on syntax: https://docs.ilert.com/rest-api/icl-ilert-condition-language. For block based configuration please use the web UI. It has no effect on manually created alerts. Note: this field is an ?include, it will not appear in lists.'
eventTypeFilterResolve:
type: string
description: 'Defines an optional resolve alert rule in ICL language This is a code based implementation, more info on syntax: https://docs.ilert.com/rest-api/icl-ilert-condition-language. For block based configuration please use the web UI. It has no effect on manually created alerts. Note: this field is an ?include, it will not appear in lists.'
autoRaiseAlerts:
type: boolean
description: Only effective when a support hour is linked to this alert source.
scoreThreshold:
type: number
format: double
description: Only used when alertCreation is set to INTELLIGENT_GROUPING.
severity:
type: integer
services:
type: array
items:
$ref: '#/components/schemas/Service'
setupStatus:
type: string
enum:
- CREATED
- CREATED_ADVANCED
- CREATED_BIDIRECTIONAL
- FINISHED
autoCreateServices:
type: boolean
default: false
createdAt:
type: string
readOnly: true
updatedAt:
type: string
readOnly: true
SupportHour:
required:
- name
- supportDays
- timezone
type: object
properties:
id:
type: integer
format: int64
name:
type: string
teams:
type: array
items:
$ref: '#/components/schemas/TeamRel'
timezone:
$ref: '#/components/schemas/TimeZone'
supportDays:
type: object
properties:
MONDAY:
$ref: '#/components/schemas/SupportDay'
TUESDAY:
$ref: '#/components/schemas/SupportDay'
WEDNESDAY:
$ref: '#/components/schemas/SupportDay'
THURSDAY:
$ref: '#/components/schemas/SupportDay'
FRIDAY:
$ref: '#/components/schemas/SupportDay'
SATURDAY:
$ref: '#/components/schemas/SupportDay'
SUNDAY:
$ref: '#/components/schemas/SupportDay'
exceptions:
type: array
items:
$ref: '#/components/schemas/SupportHourException'
Alert:
type: object
properties:
id:
type: integer
format: int64
summary:
type: string
details:
type: string
reportTime:
type: string
format: date-time
resolvedOn:
type: string
format: date-time
status:
type: string
enum:
- PENDING
- ACCEPTED
- RESOLVED
alertSource:
$ref: '#/components/schemas/AlertSource'
escalationPolicy:
$ref: '#/components/schemas/EscalationPolicy'
priority:
$ref: '#/components/schemas/AlertPriority'
alertKey:
type: string
assignedTo:
type: object
properties:
id:
type: number
description: 'This field (type: User) is deprecated, please use ''responders'' instead'
nextEscalation:
type: string
format: date-time
readOnly: true
escalationRules:
type: array
readOnly: true
items:
$ref: '#/components/schemas/EscalationRule'
nextEscalationUser:
$ref: '#/components/schemas/User'
nextEscalationRuleIndex:
type: number
readOnly: true
images:
type: array
items:
$ref: '#/components/schemas/EventImage'
links:
type: array
items:
$ref: '#/components/schemas/EventLink'
responders:
type: array
readOnly: true
items:
$ref: '#/components/schemas/AlertResponder'
severity:
maximum: 5
minimum: 1
type: integer
format: int32
description: Optional severity in range 1..5.
labels:
type: object
additionalProperties:
type: string
description: Optional key/value labels that are attached to the alert.
customDetails:
type: object
additionalProperties: true
description: Free-form custom key/value details attached to the alert. This is the original event payload of the integration. Only present with ?include=customDetails on the single-alert GET (not on the list endpoint).
linkedIncidentId:
type: integer
format: int64
readOnly: true
description: Id of the incident this alert is linked to, if any.
mergedIntoId:
type: integer
format: int64
readOnly: true
description: Id of the alert this alert has been merged into, if any.
mergeState:
type: string
readOnly: true
enum:
- NONE
- MAIN
- MERGED
description: The merge state of the alert.
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
AlertSourceTemplate:
type: object
properties:
textTemplate:
type: string
description: "For more information on alert source templating, please visit: https://docs.ilert.com/alerting/alert-sources#alert-template.\n\n Example:
`Hi {{ users[0].name }} there!` \n\nYou can use the text template instead of elements by adding the include `textTemplate` to your request. Any version can be used for POST or PUT requests."
elements:
type: array
items:
$ref: '#/components/schemas/AlertSourceTemplateElement'
AlertSourceSeverityTemplateMapping:
required:
- severity
- value
type: object
properties:
value:
type: string
severity:
type: integer
format: int32
Notification:
type: object
properties:
id:
type: integer
format: int64
method:
type: string
enum:
- PUSH
- VOICE
- SMS
- EMAIL
- WHATSAPP
target:
type: string
subject:
type: string
alertId:
type: integer
format: int64
user:
type: object
properties:
id:
type: integer
format: int64
firstname:
type: string
lastname:
type: string
notificationTime:
type: string
format: date-time
status:
type: string
enum:
- SCHEDULED
- SUCCESS
- ERROR
errorMessage:
type: string
description: An error message in case the notification status is ERROR.
UserRel:
required:
- id
type: object
properties:
id:
type: integer
format: int64
firstName:
type: string
lastName:
type: string
AlertSourcePriorityTemplate:
required:
- mappings
- valueTemplate
type: object
properties:
valueTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
mappings:
type: array
items:
$ref: '#/components/schemas/AlertSourcePriorityTemplateMapping'
SupportHourException:
type: object
required:
- name
- start
- end
- supportStatus
properties:
name:
type: string
start:
type: string
format: date
end:
type: string
format: date
supportStatus:
type: string
enum:
- DURING
- OUTSIDE
ServiceOutage:
type: object
properties:
status:
$ref: '#/components/schemas/ServiceStatus'
from:
type: string
format: date-time
until:
type: string
format: date-time
ScheduleRel:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
type:
type: string
enum:
- STATIC
- RECURRING
AlertPriorityRule:
type: string
enum:
- HIGH
- LOW
- HIGH_DURING_SUPPORT_HOURS
- LOW_DURING_SUPPORT_HOURS
AlertPriority:
type: string
enum:
- HIGH
- LOW
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'
AlertSourceTemplateElement:
type: object
properties:
type:
type: string
enum:
- TEXT
- VAR
- RAW
val:
type: string
func:
type: string
args:
type: array
items:
$ref: '#/components/schemas/AlertSourceTemplateElementArg'
IncidentStatus:
type: string
description: the incident status
enum:
- INVESTIGATING
- IDENTIFIED
- MONITORING
- RESOLVED
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'
AlertSourcePriorityTemplateMapping:
required:
- priority
- value
type: object
properties:
value:
type: string
priority:
type: string
enum:
- LOW
- HIGH
Role:
type: string
enum:
- STAKEHOLDER
- GUEST
- RESPONDER
- USER
- ADMIN
AlertResponder:
type: object
properties:
user:
$ref: '#/components/schemas/UserRel'
status:
type: string
enum:
- PENDING
- ACCEPTED
acceptedAt:
type: string
format: date-time
User:
required:
- email
- firstName
- lastName
type: object
properties:
id:
type: integer
format: int64
firstName:
type: string
lastName:
type: string
email:
type: string
timezone:
$ref: '#/components/schemas/TimeZone'
position:
type: string
department:
type: string
avatarUrl:
type: string
readOnly: true
language:
type: string
enum:
- de
- en
region:
type: string
enum:
- DE
- GB
- CH
- CN
- IN
- US
- FR
- ES
- CA
- IE
role:
$ref: '#/components/schemas/Role'
shiftColor:
type: string
description: Optional hex-color code for the user's shifts in schedules calendars
mutedUntil:
type: string
description: Date in ISO-8601
format: date-time
createdAt:
type: string
description: Date in ISO-8601
format: date-time
updatedAt:
type: string
description: Date in ISO-8601
format: date-time
SupportDay:
required:
- end
- start
type: object
properties:
start:
type: string
format: time
end:
type: string
format: time
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'
EventImage:
type: object
properties:
src:
type: string
href:
type: string
alt:
type: string
EscalationPolicy:
required:
- escalationRules
- name
type: object
properties:
id:
type: integer
format: int64
name:
type: string
escalationRules:
type: array
items:
$ref: '#/components/schemas/EscalationRule'
teams:
type: array
items:
$ref: '#/components/schemas/TeamRel'
repeating:
type: boolean
default: false
frequency:
maximum: 9
minimum: 1
type: integer
format: int32
default: 1
delayMin:
maximum: 15
minimum: 0
type: integer
format: int32
default: 0
routingKey:
type: string
description: optional
LogEntry:
type: object
properties:
id:
type: integer
format: int64
timestamp:
type: string
format: date-time
logEntryType:
type: string
enum:
- ConnectorAutomaticResultErrorLogEntry
- ConnectorAutomaticResultLogEntry
- AlertActionErrorLogEntry
- AlertActionFailLogEntry
- AlertActionSuccessLogEntry
- AlertNotRoutedLogEntry
- AlertReceivedLogEntry
- AlertRoutedSuccessfulLogEntry
- AlertSourceResponseLogEntry
- CallLogEntry
- EmailReceivedLogEntry
- EmailResolvedLogEntry
- FilterableLogEntryType
- HeartbeatOverdueLogEntry
- HeartbeatResolvedLogEntry
- AlertAssignedBySystemLogEntry
- AlertAssignedByUserLogEntry
- AlertAssignedToPolicyLogEntry
- AlertAssignedToScheduleLogEntry
- AlertAutoResolvedLogEntry
- AlertCommentAddedBySystemLogEntry
- AlertCommentAddedLogEntry
- AlertCommentPublishedLogEntry
- AlertCreatedByUserLogEntry
- AlertRaisedBySystemLogEntry
- AlertRaisedByUserLogEntry
- AlertSummaryChangedLogEntry
- IncomingCallLogEntry
- LowPriorityCallLog
- MailboxCallLogEntry
- MailboxRecordReceivedLog
- MailboxTranscribedReceivedLog
- NobodyOnCallLogEntry
- NotificationLogEntry
- ParallelCallLogEntry
- PhoneNumberNotSetLogEntry
- PhoneNumberBlockedLogEntry
- QueueResultLogEntry
- StakeholderAddedBySystemLogEntry
- StakeholderAddedLogEntry
- StakeholderRemovedLogEntry
- StakeholderResubscribedLogEntry
- StakeholderUnsubscribedLogEntry
- UserResponseLogEntry
- InComIncidentCreatedLogEntry
- InComIncidentResolvedLogEntry
- InComServiceTransitionLogEntry
- InComLinkedLogEntry
- InComUnlinkedLogEntry
- AlertChannelAttachedByUserLogEntry
- AlertChannelDetachedByUserLogEntry
- AlertEscalatedToLevelLogEntry
text:
type: string
alertId:
type: integer
format: int64
filterTypes:
type: array
items:
$ref: '#/components/schemas/LogFilterType'
vars:
type: object
additionalProperties:
type: string
SuggestedResponder:
type: object
properties:
group:
type: string
enum:
- SUGGESTED
- USER
- ESCALATION_POLICY
- ON_CALL_SCHEDULE
id:
type: number
name:
type: string
disabled:
type: boolean
TeamRel:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
AlertSourceSeverityTemplate:
required:
- mappings
- valueTemplate
type: object
properties:
valueTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
mappings:
type: array
items:
$ref: '#/components/schemas/AlertSourceSeverityTemplateMapping'
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
ManualAlert:
required:
- alertSource
- summary
type: object
properties:
summary:
type: string
details:
type: string
alertSource:
$ref: '#/components/schemas/SimpleIdField64'
escalationPolicy:
$ref: '#/components/schemas/SimpleIdField64'
priority:
$ref: '#/components/schemas/AlertPriority'
assignedTo:
type: object
properties:
id:
type: number
description: 'This field (type: User) is deprecated, please use ''responders'' instead'
images:
type: array
items:
$ref: '#/components/schemas/EventImage'
links:
type: array
items:
$ref: '#/components/schemas/EventLink'
responders:
type: array
description: List of responders (users), only user.id is required.
items:
type: object
properties:
user:
$ref: '#/components/schemas/UserRel'
AlertSourceTemplateElementArg:
type: object
properties:
S:
type: string
N:
type: integer
CountResponse:
type: object
properties:
count:
type: integer
format: int64
AlertSourceLinkTemplate:
required:
- hrefTemplate
- text
type: object
properties:
text:
type: string
hrefTemplate:
$ref: '#/components/schemas/AlertSourceTemplate'
EventLink:
type: object
properties:
href:
type: string
text:
type: string
TimeZone:
type: string
enum:
- Europe/Berlin
- America/New_York
- America/Los_Angeles
- Asia/Istanbul
securitySchemes:
apiKey:
type: apiKey
description: The Bearer API key of your user more info.
name: Authorization
in: header
x-original-swagger-version: '2.0'