OpsGenie · AsyncAPI Specification

OpsGenie Webhook Events

Version 2.0.0

OpsGenie sends webhook notifications for alert actions to configured webhook URLs. When alert events occur such as create, acknowledge, close, or delete, OpsGenie posts a JSON payload to the registered webhook endpoint containing alert details and the action performed. The webhook payload format is fixed and includes a subset of alert fields along with the triggering action and source information.

View Spec View on GitHub AlertsIncident ManagementMonitoringOn-CallOperationsAsyncAPIWebhooksEvents

Channels

/webhook
publish receiveAlertEvent
Receive alert event notification
Webhook endpoint that receives OpsGenie alert event notifications. OpsGenie posts JSON payloads to this channel when alert actions occur.

Messages

AlertCreated
Alert Created
Notification sent when a new alert is created in OpsGenie.
AlertAcknowledged
Alert Acknowledged
Notification sent when an alert is acknowledged.
AlertClosed
Alert Closed
Notification sent when an alert is closed.
AlertDeleted
Alert Deleted
Notification sent when an alert is deleted.
AlertNoteAdded
Alert Note Added
Notification sent when a note is added to an alert.
AlertOwnershipAssigned
Alert Ownership Assigned
Notification sent when ownership of an alert is assigned to a user.
AlertCustomAction
Alert Custom Action
Notification sent when a custom action is executed on an alert.

Servers

https
webhookEndpoint {webhookUrl}
Customer-configured webhook endpoint URL that receives alert event notifications from OpsGenie.

AsyncAPI Specification

Raw ↑
asyncapi: 2.6.0
info:
  title: OpsGenie Webhook Events
  description: >-
    OpsGenie sends webhook notifications for alert actions to configured
    webhook URLs. When alert events occur such as create, acknowledge,
    close, or delete, OpsGenie posts a JSON payload to the registered
    webhook endpoint containing alert details and the action performed.
    The webhook payload format is fixed and includes a subset of alert
    fields along with the triggering action and source information.
  version: '2.0.0'
  contact:
    name: Atlassian Support
    url: https://support.atlassian.com/opsgenie/
servers:
  webhookEndpoint:
    url: '{webhookUrl}'
    protocol: https
    description: >-
      Customer-configured webhook endpoint URL that receives alert
      event notifications from OpsGenie.
    variables:
      webhookUrl:
        description: >-
          The URL configured in the OpsGenie webhook integration settings.
    security:
      - {}
channels:
  /webhook:
    description: >-
      Webhook endpoint that receives OpsGenie alert event notifications.
      OpsGenie posts JSON payloads to this channel when alert actions
      occur.
    publish:
      operationId: receiveAlertEvent
      summary: Receive alert event notification
      description: >-
        OpsGenie sends alert event notifications to this endpoint when
        alert actions are performed. The payload includes the action type,
        alert details, and source information.
      message:
        oneOf:
          - $ref: '#/components/messages/AlertCreated'
          - $ref: '#/components/messages/AlertAcknowledged'
          - $ref: '#/components/messages/AlertClosed'
          - $ref: '#/components/messages/AlertDeleted'
          - $ref: '#/components/messages/AlertNoteAdded'
          - $ref: '#/components/messages/AlertOwnershipAssigned'
          - $ref: '#/components/messages/AlertCustomAction'
components:
  messages:
    AlertCreated:
      name: AlertCreated
      title: Alert Created
      summary: >-
        Notification sent when a new alert is created in OpsGenie.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
      examples:
        - name: AlertCreatedExample
          payload:
            action: Create
            alert:
              alertId: 44f717bf-44bd-11c9-44c7-2d0cf1d07b23
              message: Test alert from monitoring
              username: [email protected]
              alias: monitoring-alert-001
              tinyId: '454'
              entity: ''
              userId: 4caaaa77-9222-4322-8622-d3522fbd7dda
            source:
              name: MonitoringTool
              type: api
    AlertAcknowledged:
      name: AlertAcknowledged
      title: Alert Acknowledged
      summary: >-
        Notification sent when an alert is acknowledged.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
    AlertClosed:
      name: AlertClosed
      title: Alert Closed
      summary: >-
        Notification sent when an alert is closed.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
    AlertDeleted:
      name: AlertDeleted
      title: Alert Deleted
      summary: >-
        Notification sent when an alert is deleted.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
    AlertNoteAdded:
      name: AlertNoteAdded
      title: Alert Note Added
      summary: >-
        Notification sent when a note is added to an alert.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
    AlertOwnershipAssigned:
      name: AlertOwnershipAssigned
      title: Alert Ownership Assigned
      summary: >-
        Notification sent when ownership of an alert is assigned to a user.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
    AlertCustomAction:
      name: AlertCustomAction
      title: Alert Custom Action
      summary: >-
        Notification sent when a custom action is executed on an alert.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/WebhookPayload'
  schemas:
    WebhookPayload:
      type: object
      required:
        - action
        - alert
        - source
      properties:
        action:
          type: string
          description: >-
            The alert action that triggered the webhook. Standard values
            are Create, Acknowledge, AddNote, AssignOwnership, Close, and
            Delete. Custom action names are also possible.
          enum:
            - Create
            - Acknowledge
            - AddNote
            - AssignOwnership
            - Close
            - Delete
        alert:
          $ref: '#/components/schemas/WebhookAlert'
        source:
          $ref: '#/components/schemas/WebhookSource'
        escalationNotify:
          type: object
          description: >-
            Escalation notification details, if the event involves an
            escalation.
          properties:
            id:
              type: string
              description: >-
                Escalation ID.
            name:
              type: string
              description: >-
                Escalation name.
            type:
              type: string
              description: >-
                Entity type.
    WebhookAlert:
      type: object
      description: >-
        Subset of alert fields included in the webhook payload.
      properties:
        alertId:
          type: string
          description: >-
            Unique identifier of the alert.
        message:
          type: string
          description: >-
            Alert message text.
        username:
          type: string
          description: >-
            Username of the user who performed the action.
        alias:
          type: string
          description: >-
            Client-defined alias for the alert.
        tinyId:
          type: string
          description: >-
            Short human-readable identifier.
        entity:
          type: string
          description: >-
            Entity field of the alert.
        userId:
          type: string
          description: >-
            ID of the user who performed the action.
        createdAt:
          type: integer
          description: >-
            Timestamp of alert creation in milliseconds since epoch.
        updatedAt:
          type: integer
          description: >-
            Timestamp of last update in milliseconds since epoch.
        tags:
          type: array
          items:
            type: string
          description: >-
            Tags attached to the alert.
        description:
          type: string
          description: >-
            Detailed description of the alert.
        priority:
          type: string
          description: >-
            Priority level (P1-P5).
        source:
          type: string
          description: >-
            Source of the alert.
        note:
          type: string
          description: >-
            Note content, if the action involves a note.
    WebhookSource:
      type: object
      description: >-
        Information about the source that triggered the alert action.
      properties:
        name:
          type: string
          description: >-
            Name of the source (integration or tool name).
        type:
          type: string
          description: >-
            Type of the source (e.g. api, web, system).