ilert Alert Actions API

The Alert Actions API from ilert — 3 operation(s) for alert actions.

OpenAPI Specification

ilert-alert-actions-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: ilert REST Alert Actions 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 <a href='https://docs.ilert.com/rest-api/api-version-history' target='_blank'>take a look here</a>."
  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: Alert Actions
paths:
  /alerts/{id}/actions:
    get:
      tags:
      - Alert Actions
      summary: Get available actions for specified alert.
      parameters:
      - name: id
        in: path
        description: entity ID
        required: true
        schema:
          type: number
      responses:
        '200':
          description: list of alert actions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlertActionTrigger'
    post:
      tags:
      - Alert Actions
      summary: Invoke a specific alert action.
      parameters:
      - name: id
        in: path
        description: entity ID
        required: true
        schema:
          type: number
      requestBody:
        description: the alert action, you might skip the 'history' field
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertActionTrigger'
        required: true
      responses:
        '201':
          description: the alert action result, validate the 'success' field
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlertActionResult'
      x-codegen-request-body-name: alert-action
  /alert-actions:
    get:
      tags:
      - Alert Actions
      summary: Get alert actions.
      parameters:
      - name: source
        in: query
        description: alert source id
        schema:
          type: number
      - name: connector
        in: query
        description: connector id
        schema:
          type: string
      - 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 alert actions.
        schema:
          maximum: 100
          type: integer
          format: int32
          default: 100
      responses:
        '200':
          description: The filtered alert actions
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AlertAction'
    post:
      tags:
      - Alert Actions
      summary: Create a new alert action.
      requestBody:
        description: the alert action
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertAction'
        required: true
      responses:
        '200':
          description: The newly created alert action
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlertAction'
      x-codegen-request-body-name: alert action
  /alert-actions/{id}:
    get:
      tags:
      - Alert Actions
      summary: Get a specific alert action.
      parameters:
      - name: id
        in: path
        description: entity ID
        required: true
        schema:
          type: string
      - name: include
        in: query
        description: Describes optional properties that should be included in the response. You may declare multiple. (conditions); some may not work in lists; may be used for POST and PUT as well.
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - conditions
      responses:
        '200':
          description: The requested alert action
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlertAction'
    put:
      tags:
      - Alert Actions
      summary: 'Update the specific alert action. (note: type cannot be changed)'
      parameters:
      - name: id
        in: path
        description: entity ID
        required: true
        schema:
          type: string
      requestBody:
        description: the alert action
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertAction'
        required: true
      responses:
        '200':
          description: The updated alert action
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlertAction'
      x-codegen-request-body-name: alert action
    delete:
      tags:
      - Alert Actions
      summary: Remove a specific alert action.
      parameters:
      - name: id
        in: path
        description: entity ID
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Empty body delete response
          content: {}
components:
  schemas:
    CParamsZoomChat:
      type: object
      properties:
        channelId:
          type: string
    ServiceStatus:
      type: string
      description: the service status
      enum:
      - OPERATIONAL
      - UNDER_MAINTENANCE
      - DEGRADED
      - PARTIAL_OUTAGE
      - MAJOR_OUTAGE
    CParamsSlack:
      required:
      - channelId
      type: object
      properties:
        channelId:
          type: string
        channelName:
          type: string
        teamDomain:
          type: string
        teamId:
          type: string
    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'
    AlertActionTrigger:
      type: object
      properties:
        alertActionId:
          type: string
        connectorId:
          type: string
        type:
          type: string
        name:
          type: string
        iconUrl:
          type: string
        history:
          type: array
          items:
            $ref: '#/components/schemas/AlertActionResult'
    CParamsAutotask:
      required:
      - queueId
      type: object
      properties:
        companyId:
          type: string
        queueId:
          type: string
        ticketCategory:
          type: string
        ticketType:
          type: string
        noteType:
          type: string
        notePublish:
          type: string
        status:
          type: string
    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
    CParamsDatadog:
      type: object
      properties:
        tags:
          type: array
          items:
            type: string
        priority:
          type: string
        site:
          type: string
    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'
    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: <br />`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
    CParamsGoogleFunction:
      type: object
      properties:
        webhookUrl:
          type: string
        bodyTemplate:
          type: string
    CParamsDiscord:
      type: object
    CParamsStatusPageIO:
      type: object
      properties:
        pageId:
          type: string
    CParamsMicrosoftTeamsWebhookOnly:
      type: object
    UserRel:
      required:
      - id
      type: object
      properties:
        id:
          type: integer
          format: int64
        firstName:
          type: string
        lastName:
          type: string
    CParamsAWSLambda:
      type: object
      properties:
        webhookUrl:
          type: string
        bodyTemplate:
          type: string
    CParamsTelegram:
      required:
      - channelId
      type: object
      properties:
        channelId:
          type: string
          description: The telegram group id, usually i64, as string
    CParamsServiceNow:
      type: object
      properties:
        callerId:
          type: string
        impact:
          type: string
        urgency:
          type: string
        closeCode:
          type: string
        assignmentGroup:
          type: string
        ownerGroup:
          type: string
        service:
          type: string
        serviceOffering:
          type: string
        contactType:
          type: string
    CParamsAzureFunction:
      type: object
      properties:
        webhookUrl:
          type: string
        bodyTemplate:
          type: string
    AlertSourcePriorityTemplate:
      required:
      - mappings
      - valueTemplate
      type: object
      properties:
        valueTemplate:
          $ref: '#/components/schemas/AlertSourceTemplate'
        mappings:
          type: array
          items:
            $ref: '#/components/schemas/AlertSourcePriorityTemplateMapping'
    CParamsEmail:
      type: object
      properties:
        recipients:
          type: array
          items:
            type: string
        subject:
          type: string
        bodyTemplate:
          type: string
    CParamsZendesk:
      type: object
      properties:
        priority:
          type: string
    CParamsWebhook:
      required:
      - webhookUrl
      type: object
      properties:
        webhookUrl:
          type: string
        bodyTemplate:
          type: string
        headers:
          type: array
          items:
            type: object
            required:
            - key
            - value
            properties:
              key:
                type: string
              value:
                type: string
    AlertActionResult:
      type: object
      properties:
        id:
          type: string
        alertActionId:
          type: string
        connectorId:
          type: string
        alertId:
          type: number
        success:
          type: boolean
        actor:
          $ref: '#/components/schemas/User'
    CParamsZapier:
      type: object
      properties:
        webhookUrl:
          type: string
    CParamsTopdesk:
      type: object
      properties:
        status:
          type: string
    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
    AlertPriorityRule:
      type: string
      enum:
      - HIGH
      - LOW
      - HIGH_DURING_SUPPORT_HOURS
      - LOW_DURING_SUPPORT_HOURS
    CParamsSysdig:
      type: object
      properties:
        tags:
          type: array
          items:
            type: string
        eventFilter:
          type: string
    ScheduleRel:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        type:
          type: string
          enum:
          - STATIC
          - RECURRING
    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'
    CParamsAutomationRule:
      required:
      - alertType
      - serviceIds
      - serviceStatus
      type: object
      properties:
        alertType:
          type: string
          enum:
          - CREATED
          - ACCEPTED
        resolveIncident:
          type: boolean
          default: false
        serviceStatus:
          $ref: '#/components/schemas/ServiceStatus'
        templateId:
          type: integer
          format: int64
        sendNotification:
          type: boolean
          default: false
        serviceIds:
          type: array
          items:
            type: integer
            format: int64
    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
    AlertAction:
      required:
      - connectorType
      - name
      type: object
      properties:
        id:
          type: string
        alertSources:
          type: array
          items:
            $ref: '#/components/schemas/AlertSource'
        connectorId:
          type: string
        connectorType:
          $ref: '#/components/schemas/AlertActionType'
        name:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        triggerMode:
          type: string
          enum:
          - AUTOMATIC
          - MANUAL
        bidirectional:
          type: boolean
          readOnly: true
        escalationEndedDelaySec:
          maximum: 7200
          minimum: 0
          type: number
          description: May only be used with triggerType 'alert-escalation-ended' selected
        notResolvedDelaySec:
          maximum: 7200
          minimum: 0
          type: number
          description: May only be used with triggerType 'v-alert-not-resolved' selected
        triggerTypes:
          type: array
          items:
            type: string
            enum:
            - alert-created
            - alert-assigned
            - alert-auto-escalated
            - alert-acknowledged
            - alert-raised
            - alert-comment-added
            - alert-escalation-ended
            - alert-resolved
            - alert-responder-added
            - alert-responder-removed
            - alert-channel-attached
            - alert-channel-detached
            - v-alert-not-resolved
        alertFilter:
          type: object
          description: This field is deprecated, use 'conditions' instead. If both are used this field is ignored.
          properties:
            operator:
              type: string
              enum:
              - AND
              - OR
            predicates:
              type: array
              items:
                type: object
                properties:
                  field:
                    type: string
                    enum:
                    - ALERT_SUMMARY
                    - ALERT_DETAILS
                    - ESCALATION_POLICY
                    - ALERT_PRIORITY
                  criteria:
                    type: string
                    enum:
                    - CONTAINS_ANY_WORDS
                    - CONTAINS_NOT_WORDS
                    - CONTAINS_STRING
                    - CONTAINS_NOT_STRING
                    - IS_STRING
                    - IS_NOT_STRING
                    - MATCHES_REGEX
                    - MATCHES_NOT_REGEX
                  value:
                    type: string
        conditions:
          type: string
          description: 'Defines an optional alert 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. Note: this field is an ?include, it will not appear in lists.'
        params:
          type: object
          oneOf:
          - $ref: '#/components/schemas/CParamsDatadog'
          - $ref: '#/components/schemas/CParamsJira'
          - $ref: '#/components/schemas/CParamsMicrosoftTeams'
          - $ref: '#/components/schemas/CParamsMicrosoftTeamsWebhookOnly'
          - $ref: '#/components/schemas/CParamsServiceNow'
          - $ref: '#/components/schemas/CParamsAutotask'
          - $ref: '#/components/schemas/CParamsSlack'
          - $ref: '#/components/schemas/CParamsWebhook'
          - $ref: '#/components/schemas/CParamsZendesk'
          - $ref: '#/components/schemas/CParamsDiscord'
          - $ref: '#/components/schemas/CParamsGithub'
          - $ref: '#/components/schemas/CParamsTopdesk'
          - $ref: '#/components/schemas/CParamsAWSLambda'
          - $ref: '#/components/schemas/CParamsAzureFunction'
          - $ref: '#/components/schemas/CParamsGoogleFunction'
          - $ref: '#/components/schemas/CParamsEmail'
          - $ref: '#/components/schemas/CParamsSysdig'
         

# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ilert/refs/heads/main/openapi/ilert-alert-actions-api-openapi.yml