> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coralogix.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a comment event

> Modify the content of an existing comment event.

Requires the following permissions:
- `case:Comment`



## OpenAPI

````yaml openapi_v5.yaml put /cases/events/v1/{event_id}/comments
openapi: 3.0.0
info:
  title: ''
  version: 1.0.0
servers:
  - url: https://api.coralogix.com/mgmt/openapi/5
  - url: https://api.eu2.coralogix.com/mgmt/openapi/5
  - url: https://api.coralogix.us/mgmt/openapi/5
  - url: https://api.cx498.coralogix.com/mgmt/openapi/5
  - url: https://api.coralogix.in/mgmt/openapi/5
  - url: https://api.coralogixsg.com/mgmt/openapi/5
  - url: https://api.ap3.coralogix.com/mgmt/openapi/5
security:
  - apiKeyAuth: []
tags:
  - name: AI Applications Service
    description: Manage the catalog of AI applications discovered from spans.
    externalDocs:
      url: ''
  - name: AI Evaluations Service
    description: >-
      Manage AI evaluations and the custom evaluation catalog for AI
      applications.
    externalDocs:
      url: ''
  - name: API Keys Admin Service
    description: Administrative operations for API Keys management.
    externalDocs:
      url: ''
  - name: API Keys Service
    description: Manage your API Keys.
    externalDocs:
      url: ''
  - name: Actions Service
    description: View and manage your Actions.
    externalDocs:
      url: ''
  - name: Alert Scheduler Rule service
    description: Manage your alert scheduler rules.
    externalDocs:
      url: ''
  - name: Alert definitions service
    description: >-
      View and manage your alerts using alert definitions - data structures that
      contain the configuration required to create an alert.
    externalDocs:
      description: Learn more about alerts in our documentation
      url: https://coralogix.com/docs/user-guides/alerting/introduction-to-alerts/
  - name: Alert events service
    description: >-
      Get information regarding your alert events - instances of alerts being
      triggered.
    externalDocs:
      description: Learn more about alert events and incidents in our documentation.
      url: https://coralogix.com/docs/user-guides/alerting/incidents/
  - name: Case Events service
    description: Manage case events, comments, and external thread synchronization.
    externalDocs:
      url: ''
  - name: Case Settings service
    description: Manage case settings team configurations.
    externalDocs:
      url: ''
  - name: Cases notification service
    description: Track notification adjacent data for cases.
    externalDocs:
      url: ''
  - name: Cases service
    description: >-
      Manage cases throughout their lifecycle. Create, view, assign,
      acknowledge, unacknowledge, resolve, and close cases to streamline
      investigations and follow-ups.
    externalDocs:
      description: Learn more about Cases in our documentation
      url: https://coralogix.com/docs/user-guides/cases/
  - name: Connector Schema service
    description: Retrieve connector schemas for notification center integrations
    externalDocs:
      description: Learn more about connectors in our documentation
      url: >-
        https://coralogix.com/docs/user-guides/notification-center/connectors/introduction/
  - name: Connectors service
    description: >-
      View and manage your connectors - integration instances for notification
      destinations
    externalDocs:
      description: Lean more about connectors in our documentation
      url: >-
        https://coralogix.com/docs/user-guides/notification-center/connectors/introduction/
  - name: Contextual data integration service
    description: Query for contextual data integration information.
    externalDocs:
      url: ''
  - name: Custom Enrichments Service
    description: Manage your enrichments.
    externalDocs:
      url: ''
  - name: Dashboard folders service
    description: Manage your dashboard folders.
    externalDocs:
      url: ''
  - name: Dashboard service
    description: Get information about the Coralogix Dashboard catalog.
    externalDocs:
      url: ''
  - name: Data Usage Query service
    description: >-
      Query billable data usage through the public Coralogix API using daily or
      hourly bucketed aggregations over supported labels.
    externalDocs:
      url: ''
  - name: Data Usage Service
    description: A service to manage data usage metrics.
    externalDocs:
      url: ''
  - name: Enrichments Service
    description: Manage your enrichments.
    externalDocs:
      url: ''
  - name: Entities service
    description: Query information about registered entities in the notification center
    externalDocs:
      description: Lean more about the notification center in our documentation
      url: https://coralogix.com/docs/user-guides/notification-center/introduction/
  - name: Events Service
    description: A service for querying events.
    externalDocs:
      description: Learn more about alerts in our documentation
      url: https://coralogix.com/docs/user-guides/alerting/introduction-to-alerts/
  - name: Events2Metrics Service
    description: Manage your events2metrics.
    externalDocs:
      url: ''
  - name: Extension deployment service
    description: A service that enables querying for extension deployment information.
    externalDocs:
      description: Find out more about extensions in our documentation.
      url: https://coralogix.com/docs/integrations/extensions/
  - name: Extension service
    description: A service that enables querying for extension information.
    externalDocs:
      description: Learn more about extensions in our documentation.
      url: https://coralogix.com/docs/integrations/extensions/
  - name: Folders for views service
    description: Create and manage view folders.
    externalDocs:
      url: ''
  - name: Global routers service
    description: >-
      View and manage your global routers - entities that direct notifications
      to configured destinations based on conditions
    externalDocs:
      description: Lean more about global routers in our documentation
      url: >-
        https://coralogix.com/docs/user-guides/notification-center/routing/introduction/
  - name: IP access service
    description: >-
      IP access service provides the API for managing company IP access
      settings.
    externalDocs:
      url: ''
  - name: Incidents service
    description: >-
      Handle all operations related to incident management within Coralogix.
      Identify, manage, and resolve incidents efficiently through automated
      workflows and team collaboration.
    externalDocs:
      description: Find out more about incident management in our documentation
      url: https://coralogix.com/docs/user-guides/alerting/incidents/
  - name: Integration service
    description: A service that enables querying for integration information.
    externalDocs:
      description: Find out more about integrations in our documentation.
      url: https://coralogix.com/docs/integrations/getting-started/
  - name: Metrics Data Archive Service
    description: View and manage your storage targets for metrics.
    externalDocs:
      description: Find out more about archives
      url: >-
        https://coralogix.com/docs/user-guides/data-flow/s3-archive/connect-s3-archive/
  - name: Notifications testing service
    description: >-
      Test your notification center configurations including connectors,
      presets, and templates
    externalDocs:
      description: Lean more about the notification center in our documentation
      url: https://coralogix.com/docs/user-guides/notification-center/introduction/
  - name: Outgoing webhooks service
    externalDocs:
      description: Find out more about outbound webhooks in our documentation.
      url: >-
        https://coralogix.com/docs/user-guides/alerting/outbound-webhooks/generic-outbound-webhooks-alert-webhooks/
  - name: Policies Service
    description: View and manage your TCO policies
    externalDocs:
      url: ''
  - name: Presets service
    description: >-
      View and manage your presets - pre-configured templates for notification
      content rendering
    externalDocs:
      description: Lean more about presets in our documentation
      url: >-
        https://coralogix.com/docs/user-guides/notification-center/presets/introduction/
  - name: Quota Allocation Rule Set service
    description: Manage quota allocation rules for different entity types.
    externalDocs:
      url: ''
  - name: Recording Rules Service
    description: A service to manage recording rules.
    externalDocs:
      url: ''
  - name: Retentions Service
    description: View and manage retentions
    externalDocs:
      url: ''
  - name: Role Management Service
    description: Service for managing system and custom roles.
    externalDocs:
      url: ''
  - name: Rule Groups Service
    description: A service to manage rule groups.
    externalDocs:
      url: ''
  - name: SAML Configuration Service
    description: Manage your SAML configuration
    externalDocs:
      url: ''
  - name: Scopes Service
    description: A service to manage scopes
    externalDocs:
      url: ''
  - name: Slos Service
    description: A service for managing Service Level Objectives (SLOs).
    externalDocs:
      url: ''
  - name: Target Service
    description: View and manage your storage targets for logs.
    externalDocs:
      description: Find out more about archives
      url: >-
        https://coralogix.com/docs/user-guides/data-flow/s3-archive/connect-s3-archive/
  - name: Team Groups Management Service
    description: Manage Team Groups.
    externalDocs:
      url: ''
  - name: Users Management Service
    description: >-
      Manage team members (users) including creation, updates, search, and
      status management.
    externalDocs:
      url: ''
  - name: Views service
    description: Create and manage views.
    externalDocs:
      url: ''
paths:
  /cases/events/v1/{event_id}/comments:
    put:
      tags:
        - Case Events service
      summary: Update a comment event
      description: |-
        Modify the content of an existing comment event.

        Requires the following permissions:
        - `case:Comment`
      operationId: CaseEventsService_UpdateComment
      parameters:
        - description: ID of the comment event to update
          in: path
          name: event_id
          required: true
          schema:
            minLength: 0
            type: string
            description: ID of the comment event to update
            example: f56645c5-9cd4-4b9f-961f-4f852d8835a0
      requestBody:
        content:
          application/json:
            schema:
              description: Request for updating a comment on a case event.
              properties:
                attachments:
                  minItems: 0
                  type: array
                  items:
                    $ref: '#/components/schemas/CommentAttachment'
                  description: Attachments to the comment
                text:
                  minLength: 0
                  type: string
                  description: Comment text to update
                  example: This is updated text
              required:
                - text
              title: Update comment event request
              type: object
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateCommentResponse'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Unauthorized request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Event not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal server error
      externalDocs:
        url: ''
components:
  schemas:
    CommentAttachment:
      title: Comment attachment
      type: object
      oneOf:
        - required:
            - log
          type: object
        - required:
            - customWidget
          type: object
        - required:
            - file
          type: object
      properties:
        customWidget:
          $ref: '#/components/schemas/CustomDashboardWidgetAttachment'
        file:
          $ref: '#/components/schemas/FileAttachment'
        log:
          $ref: '#/components/schemas/LogAttachment'
      externalDocs:
        url: ''
    UpdateCommentResponse:
      title: Update comment event response
      required:
        - event
      type: object
      properties:
        event:
          $ref: '#/components/schemas/CaseEvent'
      description: Response returned after successfully updating a comment.
      externalDocs:
        url: ''
    Error:
      type: object
      properties:
        code:
          maximum: 599
          minimum: 100
          type: integer
          description: HTTP status code of the error (for example 400, 404, 500).
          format: int32
        message:
          maxLength: 4096
          minLength: 0
          pattern: ^[\s\S]*$
          type: string
          description: Human-readable description of the error.
      description: Standard error response body returned for a failed request.
    CustomDashboardWidgetAttachment:
      title: Custom dashboard widget attachment
      required:
        - customDashboardId
        - widgetId
        - widgetScreenshot
      type: object
      properties:
        customDashboardId:
          minLength: 0
          type: string
          description: Unique identifier of the custom dashboard
          example: dashboard_3f166e9f-3c88-4af2-b52e-138f339dab3e
        queryLinkSuffix:
          minLength: 0
          type: string
          description: >-
            URL suffix for accessing the widget (not including the Coralogix
            domain part)
          example: /dashboards/custom/123/widgets/456?time=123456789
        widgetId:
          minLength: 0
          type: string
          description: Unique identifier of the widget within the dashboard
          example: widget_a1b2c3d4-e5f6-7890-abcd-ef1234567890
        widgetScreenshot:
          $ref: '#/components/schemas/FileAttachment'
      description: Attachment containing custom dashboard widget data and screenshot
      externalDocs:
        url: ''
    FileAttachment:
      title: File attachment
      required:
        - fileName
        - fileId
        - isDeleted
      type: object
      properties:
        fileId:
          minLength: 0
          type: string
          description: Unique identifier of the file (same id as used in blobset flow)
          example: file_a1b2c3d4-e5f6-7890-abcd-ef1234567890
        fileName:
          minLength: 0
          type: string
          description: Original name of the attached file
          example: screenshot_2025-09-22.png
        isDeleted:
          type: boolean
          description: Flag indicating whether the file has been marked as deleted
          example: false
      description: Attachment representing a file with metadata
      externalDocs:
        url: ''
    LogAttachment:
      title: Log attachment
      required:
        - logId
        - logTimestamp
        - logContent
      type: object
      properties:
        logContent:
          minLength: 0
          type: string
          description: Raw content of the log entry
          example: 'ERROR: Database connection timeout after 30 seconds'
        logId:
          minLength: 0
          type: string
          description: Unique identifier of the log entry
          example: log_4f8b1a2c3d5e6f7g8h9i0j1k2l3m4n5o
        logTimestamp:
          minLength: 0
          type: string
          description: Timestamp when the log entry was created
          format: date-time
          example: '2025-09-22T10:30:00.000Z'
        queryLinkSuffix:
          minLength: 0
          type: string
          description: >-
            URL suffix for querying related logs (not including the Coralogix
            domain part)
          example: /logs/query?time=123456789&query=error
      description: Attachment containing log data and related information
      externalDocs:
        url: ''
    CaseEvent:
      title: Case event
      required:
        - eventId
        - eventData
        - actor
        - createTime
        - eventTime
      type: object
      properties:
        actor:
          $ref: '#/components/schemas/EventActor'
        createTime:
          minLength: 0
          type: string
          description: Server-side insertion time
          format: date-time
          example: '2025-09-22T10:30:00.000Z'
        eventData:
          $ref: '#/components/schemas/CaseEventData'
        eventId:
          minLength: 0
          type: string
          description: Unique identifier of the event
          example: ef51d3d9-a301-496b-aa7d-9a6e519ba0d5
        eventTime:
          minLength: 0
          type: string
          description: Logical occurrence time of the event
          format: date-time
          example: '2025-09-22T10:29:45.000Z'
        updateTime:
          minLength: 0
          type: string
          description: If edited, last modification time of the event
          format: date-time
      description: Represents an immutable entry in a case's event timeline.
      externalDocs:
        url: ''
    EventActor:
      title: Event actor
      type: object
      oneOf:
        - required:
            - system
          type: object
        - required:
            - user
          type: object
        - required:
            - serviceNow
          type: object
        - required:
            - apiKey
          type: object
        - required:
            - slack
          type: object
        - required:
            - prometheusAlertManager
          type: object
        - required:
            - pagerDuty
          type: object
        - required:
            - microsoftTeams
          type: object
        - type: object
          not:
            anyOf:
              - required:
                  - system
                type: object
              - required:
                  - user
                type: object
              - required:
                  - serviceNow
                type: object
              - required:
                  - apiKey
                type: object
              - required:
                  - slack
                type: object
              - required:
                  - prometheusAlertManager
                type: object
              - required:
                  - pagerDuty
                type: object
              - required:
                  - microsoftTeams
                type: object
      properties:
        apiKey:
          $ref: '#/components/schemas/ApiKeyActor'
        microsoftTeams:
          $ref: '#/components/schemas/MicrosoftTeamsActor'
        pagerDuty:
          $ref: '#/components/schemas/PagerDutyActor'
        prometheusAlertManager:
          $ref: '#/components/schemas/PrometheusAlertManagerActor'
        serviceNow:
          $ref: '#/components/schemas/ServiceNowActor'
        slack:
          $ref: '#/components/schemas/SlackActor'
        system:
          $ref: '#/components/schemas/SystemActor'
        user:
          $ref: '#/components/schemas/UserActor'
      description: Actor that initiated the event.
      externalDocs:
        url: ''
    CaseEventData:
      title: Case event data
      type: object
      oneOf:
        - required:
            - assigned
          type: object
        - required:
            - unassigned
          type: object
        - required:
            - comment
          type: object
        - required:
            - statusChanged
          type: object
        - required:
            - notificationSent
          type: object
        - required:
            - notificationFailed
          type: object
        - required:
            - created
          type: object
        - required:
            - priorityDetailsChanged
          type: object
        - required:
            - titleChangedEvent
          type: object
        - required:
            - resolutionReasonChangedEvent
          type: object
        - required:
            - changeAssigneeFailed
          type: object
        - required:
            - kpiBreached
          type: object
        - type: object
          not:
            anyOf:
              - required:
                  - assigned
                type: object
              - required:
                  - unassigned
                type: object
              - required:
                  - comment
                type: object
              - required:
                  - statusChanged
                type: object
              - required:
                  - notificationSent
                type: object
              - required:
                  - notificationFailed
                type: object
              - required:
                  - created
                type: object
              - required:
                  - priorityDetailsChanged
                type: object
              - required:
                  - titleChangedEvent
                type: object
              - required:
                  - resolutionReasonChangedEvent
                type: object
              - required:
                  - changeAssigneeFailed
                type: object
              - required:
                  - kpiBreached
                type: object
      properties:
        assigned:
          $ref: '#/components/schemas/AssignedCaseEvent'
        changeAssigneeFailed:
          $ref: '#/components/schemas/ChangeAssigneeFailedEvent'
        comment:
          $ref: '#/components/schemas/CommentCaseEvent'
        created:
          $ref: '#/components/schemas/CreatedCaseEvent'
        kpiBreached:
          $ref: '#/components/schemas/KPIBreachedCaseEvent'
        notificationFailed:
          $ref: '#/components/schemas/NotificationFailedCaseEvent'
        notificationSent:
          $ref: '#/components/schemas/NotificationSentCaseEvent'
        priorityDetailsChanged:
          $ref: '#/components/schemas/PriorityDetailsChangedCaseEvent'
        resolutionReasonChangedEvent:
          $ref: '#/components/schemas/ResolutionReasonChangedCaseEvent'
        statusChanged:
          $ref: '#/components/schemas/StatusChangedCaseEvent'
        titleChangedEvent:
          $ref: '#/components/schemas/TitleChangedCaseEvent'
        unassigned:
          $ref: '#/components/schemas/UnassignedCaseEvent'
      description: One-of wrapper for concrete case event types.
      externalDocs:
        url: ''
    ApiKeyActor:
      title: API key actor
      type: object
      properties:
        id:
          minLength: 0
          type: string
          description: API key ID
          example: 2b1c3d4e-5f6a-7b8c-9d0e-1f2a3b4c5d6e
        name:
          minLength: 0
          type: string
          description: API key name
          example: Incident Management Integration Key
      description: Information about the API key that initiated the action.
      externalDocs:
        url: ''
    MicrosoftTeamsActor:
      title: Microsoft Teams actor
      type: object
      properties:
        coralogixUserId:
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
          type: string
          description: >-
            If the Microsoft Teams user is linked to a Coralogix user, this
            field contains the Coralogix user ID.
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
        displayName:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: Microsoft Teams display name
          example: John Doe
        teamsUserId:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: Microsoft Teams user ID
          example: 29:1abc123def456
        userEmail:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: Email of the Microsoft Teams user
          example: john.doe@example.com
      description: Information about the Microsoft Teams user who initiated the action.
      externalDocs:
        url: ''
    PagerDutyActor:
      title: PagerDuty actor
      type: object
      properties:
        coralogixUserId:
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
          type: string
          description: >-
            If the PagerDuty user is linked to a Coralogix user, this field
            contains the Coralogix user ID.
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
        displayName:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: PagerDuty display name
          example: John Doe
        pagerDutyUserId:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: PagerDuty user ID
          example: U012AB3CD
        userEmail:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: Email of the PagerDuty user
          example: john.doe@example.com
      description: Information about the PagerDuty user who initiated the action.
      externalDocs:
        url: ''
    PrometheusAlertManagerActor:
      title: Prometheus Alert Manager actor
      type: object
      properties:
        receiverName:
          maxLength: 256
          minLength: 1
          pattern: ^[\s\S]*$
          type: string
          description: Prometheus Alert Manager receiver name
          example: alertmanager-main-0
      description: >-
        Information about the Prometheus Alert Manager instance that initiated
        the action.
      externalDocs:
        url: ''
    ServiceNowActor:
      title: Service Now actor
      type: object
      properties:
        coralogixUserId:
          minLength: 0
          type: string
          description: >-
            If the Service Now user is linked to a Coralogix user, this field
            contains the Coralogix user ID.
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
        id:
          minLength: 0
          type: string
          description: User ID
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
        userEmail:
          minLength: 0
          type: string
          description: Mail of the user
          example: example@coralogix.com
        username:
          minLength: 0
          type: string
          description: Username
      description: >-
        Information about the user who initiated the action in Service Now
        platform
      externalDocs:
        url: ''
    SlackActor:
      title: Slack actor
      type: object
      properties:
        coralogixUserId:
          minLength: 0
          type: string
          description: >-
            If the Slack user is linked to a Coralogix user, this field contains
            the Coralogix user ID.
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
        displayName:
          minLength: 0
          type: string
          description: Slack display name
          example: John Doe
        slackUserId:
          minLength: 0
          type: string
          description: Slack user ID
          example: U012AB3CD
        userEmail:
          minLength: 0
          type: string
          description: Email of the Slack user
          example: john.doe@example.com
      description: Information about the Slack user who initiated the action.
      externalDocs:
        url: ''
    SystemActor:
      title: System actor
      type: object
      additionalProperties: false
      description: Empty message indicating system-initiated action.
      externalDocs:
        url: ''
    UserActor:
      title: User actor
      type: object
      properties:
        id:
          minLength: 0
          type: string
          description: User ID
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
      description: Information about the user who initiated the action.
      externalDocs:
        url: ''
    AssignedCaseEvent:
      title: Assigned event
      type: object
      properties:
        assigneeUserId:
          minLength: 0
          type: string
          description: New assignee user ID
          example: 3af152ee-9eaf-4803-87f1-23c5fb2fbaa0
        previousAssigneeUserId:
          minLength: 0
          type: string
          description: Previous assignee user ID (if any)
      description: Assigned case event.
      externalDocs:
        url: ''
    ChangeAssigneeFailedEvent:
      title: Change assignee failed event
      type: object
      properties:
        unknownAssigneeError:
          $ref: '#/components/schemas/UnknownAssigneeError'
      description: Event recorded when an attempt to reassign a case fails.
      externalDocs:
        url: ''
    CommentCaseEvent:
      title: Comment event
      type: object
      properties:
        attachments:
          minItems: 0
          type: array
          items:
            $ref: '#/components/schemas/CommentAttachment'
          description: Attachments to the comment
        slack:
          $ref: '#/components/schemas/SlackCommentMetadata'
        unsafeText:
          minLength: 0
          type: string
          description: Comment text
          example: Looking into DB timeouts
      description: Event recorded when a user posts a comment on a case.
      externalDocs:
        url: ''
    CreatedCaseEvent:
      title: Created event
      type: object
      properties:
        priority:
          $ref: '#/components/schemas/CasePriority'
      description: Created case event.
      externalDocs:
        url: ''
    KPIBreachedCaseEvent:
      title: KPI breached event
      type: object
      properties:
        kpiType:
          $ref: '#/components/schemas/KPIType'
        priority:
          $ref: '#/components/schemas/CasePriority'
        threshold:
          minLength: 0
          type: string
          description: Duration after which the KPI threshold was set to breach
          example: 300s
      description: Kpi breached case event.
      externalDocs:
        url: ''
    NotificationFailedCaseEvent:
      title: Notification failed event
      type: object
      properties:
        error:
          minLength: 0
          type: string
          description: Error message for the failed notification
          example: 'Slack API: channel_not_found'
      description: Notification failed case event.
      externalDocs:
        url: ''
    NotificationSentCaseEvent:
      title: Notification sent event
      type: object
      properties:
        notificationRequestId:
          minLength: 0
          type: string
          description: The notification request ID, as sent to the notifications center.
          example: a1b2c3d4-5678-90ab-cdef-1234567890ab
        notifications:
          minItems: 0
          type: array
          items:
            $ref: '#/components/schemas/NotificationMetadata'
          description: List of notifications produced by this action
      description: Notification sent case event.
      externalDocs:
        url: ''
    PriorityDetailsChangedCaseEvent:
      title: Priority details changed event
      type: object
      properties:
        from:
          $ref: '#/components/schemas/PriorityDetails'
        to:
          $ref: '#/components/schemas/PriorityDetails'
      description: Priority details changed case event.
      externalDocs:
        url: ''
    ResolutionReasonChangedCaseEvent:
      title: Resolution reason changed event
      type: object
      properties:
        from:
          minLength: 0
          type: string
          description: Previous resolution reason
        to:
          minLength: 0
          type: string
          description: New resolution reason
      description: Resolution reason changed case event.
      externalDocs:
        url: ''
    StatusChangedCaseEvent:
      title: Status changed event
      type: object
      properties:
        newStatus:
          $ref: '#/components/schemas/CaseStatus'
        oldStatus:
          $ref: '#/components/schemas/CaseStatus'
      description: Status changed case event.
      externalDocs:
        url: ''
    TitleChangedCaseEvent:
      title: Title changed event
      type: object
      properties:
        from:
          minLength: 0
          type: string
          description: Previous case title
        to:
          minLength: 0
          type: string
          description: New case title
      description: Title changed case event.
      externalDocs:
        url: ''
    UnassignedCaseEvent:
      title: Unassigned event
      type: object
      properties:
        previousAssigneeUserId:
          minLength: 0
          type: string
          description: User ID that was unassigned
      description: Unassigned case event.
      externalDocs:
        url: ''
    UnknownAssigneeError:
      title: Unknown assignee error
      type: object
      properties:
        unknownAssigneeEmail:
          minLength: 0
          type: string
          description: Email of the assignee that could not be found
          example: unknown
      description: Change assignee failed event.
      externalDocs:
        url: ''
    SlackCommentMetadata:
      title: Slack comment metadata
      type: object
      properties:
        channelId:
          minLength: 0
          type: string
          description: Slack channel ID
          example: C012AB3CD
        threadId:
          minLength: 0
          type: string
          description: Slack thread ID
          example: '1234567890.123456'
        userEmail:
          minLength: 0
          type: string
          description: Email of the Slack user
          example: john.doe@example.com
        userId:
          minLength: 0
          type: string
          description: Slack user ID
          example: U012AB3CD
        workspaceId:
          minLength: 0
          type: string
          description: Slack workspace ID
          example: T012AB3CD
      description: Comment case event.
      externalDocs:
        url: ''
    CasePriority:
      enum:
        - CASE_PRIORITY_UNSPECIFIED
        - CASE_PRIORITY_P1
        - CASE_PRIORITY_P2
        - CASE_PRIORITY_P3
        - CASE_PRIORITY_P4
        - CASE_PRIORITY_P5
      type: string
      description: Case priority.
    KPIType:
      enum:
        - KPI_TYPE_UNSPECIFIED
        - KPI_TYPE_TIME_TO_ACKNOWLEDGE
        - KPI_TYPE_TIME_TO_RESOLVE
        - KPI_TYPE_TIME_TO_UPDATE
      type: string
      description: Kpi type.
    NotificationMetadata:
      title: Notification metadata
      type: object
      properties:
        token:
          minLength: 0
          type: string
          description: Notification token/reference
          example: 4c8ba1ec-acee-4bc7-ad6c-d35476b58541
      externalDocs:
        url: ''
    PriorityDetails:
      title: Priority details
      type: object
      properties:
        override:
          $ref: '#/components/schemas/CasePriority'
        system:
          $ref: '#/components/schemas/CasePriority'
      description: Priority details, including system computed and user override values.
      externalDocs:
        url: ''
    CaseStatus:
      enum:
        - CASE_STATUS_UNSPECIFIED
        - CASE_STATUS_PENDING_ACTIVATION
        - CASE_STATUS_ACTIVE
        - CASE_STATUS_ACKNOWLEDGED
        - CASE_STATUS_RESOLVED
        - CASE_STATUS_CLOSED
      type: string
      description: Case status.
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: API key authentication

````