Resource

Alert Episode

Manage alert episodes (groups of related alerts) for your project

The Alert Episode Model

Properties

  • Name
    _id
    Type
    Object ID
    Description

    ID of this object

  • Name
    createdAt
    Type
    Date
    Description

    Date and Time when the object was created.

  • Name
    updatedAt
    Type
    Date
    Description

    Date and Time when the object was updated.

  • Name
    project
    Type
    Project
    Description

    Relation to Project Resource in which this object belongs

  • Name
    projectId
    Type
    Object IDRequired
    Description

    ID of your Project in which this object belongs

  • Name
    title
    Type
    Long TextRequired
    Description

    Title of this alert episode

  • Name
    description
    Type
    Markdown
    Description

    Description of this alert episode. This is in markdown format.

  • Name
    episodeNumber
    Type
    Number
    Description

    Auto-incrementing episode number per project

  • Name
    episodeNumberWithPrefix
    Type
    Text
    Description

    Episode number with prefix (e.g., 'AE-42' or '#42')

  • Name
    currentAlertState
    Type
    Alert State
    Description

    Current state of this episode. Is the episode acknowledged? or resolved?

  • Name
    currentAlertStateId
    Type
    Object IDRequired
    Description

    Current Alert State ID

  • Name
    alertSeverity
    Type
    Alert Severity
    Description

    High-water mark severity of this episode. Represents the highest severity among all member alerts.

  • Name
    alertSeverityId
    Type
    Object ID
    Description

    Alert Severity ID

  • Name
    rootCause
    Type
    Markdown
    Description

    User-documented root cause of this episode

  • Name
    lastAlertAddedAt
    Type
    Date
    Description

    When the last alert was added to this episode

  • Name
    resolvedAt
    Type
    Date
    Description

    When this episode was resolved

  • Name
    allAlertsResolvedAt
    Type
    Date
    Description

    When all alerts in this episode were first detected as resolved. Used for resolve delay calculation.

  • Name
    assignedToUser
    Type
    User
    Description

    User who is assigned to this episode

  • Name
    assignedToUserId
    Type
    Object ID
    Description

    User ID who is assigned to this episode

  • Name
    assignedToTeam
    Type
    Team
    Description

    Team that is assigned to this episode

  • Name
    assignedToTeamId
    Type
    Object ID
    Description

    Team ID that is assigned to this episode

  • Name
    alertGroupingRule
    Type
    Alert Grouping Rule
    Description

    The grouping rule that created this episode (null for manually created episodes)

  • Name
    alertGroupingRuleId
    Type
    Object ID
    Description

    Alert Grouping Rule ID that created this episode

  • Name
    onCallDutyPolicies
    Type
    On-Call Policy
    Description

    List of on-call duty policies to execute for this episode.

  • Name
    isOnCallPolicyExecuted
    Type
    BooleanRequired
    Description

    Whether the on-call policy has been executed for this episode

  • Name
    alertCount
    Type
    NumberRequired
    Description

    Denormalized count of alerts in this episode

  • Name
    titleTemplate
    Type
    Long Text
    Description

    Template used to generate the episode title. Stored for dynamic variable updates.

  • Name
    descriptionTemplate
    Type
    Long Text
    Description

    Template used to generate the episode description. Stored for dynamic variable updates.

  • Name
    isManuallyCreated
    Type
    BooleanRequired
    Description

    Whether this episode was manually created vs auto-created by a rule

  • Name
    labels
    Type
    Label
    Description

    Relation to Labels Array where this object is categorized in.

  • Name
    createdByUser
    Type
    User
    Description

    Relation to User who created this object (if this object was created by a User)

  • Name
    createdByUserId
    Type
    Object ID
    Description

    User ID who created this object (if this object was created by a User)

  • Name
    isOwnerNotifiedOfEpisodeCreation
    Type
    BooleanRequired
    Description

    Are owners notified when this episode is created?

  • Name
    groupingKey
    Type
    Long Text
    Description

    Key used for grouping alerts into this episode. Generated from groupByFields of the matching rule.

  • Name
    remediationNotes
    Type
    Markdown
    Description

    User-documented remediation steps and notes for this episode

  • Name
    postUpdatesToWorkspaceChannels
    Type
    JSON
    Description

    Workspace channels to post episode updates to (e.g., Slack, Microsoft Teams)

GETorPOST/api/alert-episode/get-list

List

This endpoint allows you to retrieve a paginated list of all your Alert Episode. By default, a maximum of ten Alert Episode are shown per page.

Optional Query Params

  • limit
    number
    Number of objects to fetch. By default 10, you can increase this count up to 100
  • skip
    number
    Number of objects to skip. This can be useful in pagination

Optional Request Body

List Request

POST
/api/alert-episode/get-list?skip=0&limit=10
Headers
Content-Type: application/json
ApiKey: YOUR_API_KEY
Body
{
  "select": {
    "alertCount": true,
    "currentAlertStateId": true,
    "isManuallyCreated": true,
    "isOnCallPolicyExecuted": true,
    "isOwnerNotifiedOfEpisodeCreation": true
  },
  "query": {
    "title": "Example title"
  },
  "sort": {
    "createdAt": -1
  }
}

Response

{
  "count": 10,
  "limit": 10,
  "skip": 0,
  "data": [
    {
      "_id": "376b0200-28fe-11f1-b591-3fdcef396aba",
      "alertCount": 100,
      "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
      "isManuallyCreated": true,
      "isOnCallPolicyExecuted": true,
      "isOwnerNotifiedOfEpisodeCreation": true
    },
    {
      "_id": "376b0201-28fe-11f1-b591-3fdcef396aba",
      "alertCount": 100,
      "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
      "isManuallyCreated": true,
      "isOnCallPolicyExecuted": true,
      "isOwnerNotifiedOfEpisodeCreation": true
    },
    {
      "_id": "376b0202-28fe-11f1-b591-3fdcef396aba",
      "alertCount": 100,
      "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
      "isManuallyCreated": true,
      "isOnCallPolicyExecuted": true,
      "isOwnerNotifiedOfEpisodeCreation": true
    }
  ]
}
GETorPOST/api/alert-episode/:id/get-item

Get item by ID

This endpoint allows you to retrieve Alert Episode by ID.

  • id
    text
    ID of the Object

Optional Request Body

Get Item Request

POST
/api/alert-episode/:id/get-item
Headers
Content-Type: application/json
ApiKey: YOUR_API_KEY
Body
{
  "select": {
    "alertCount": true,
    "currentAlertStateId": true,
    "isManuallyCreated": true,
    "isOnCallPolicyExecuted": true,
    "isOwnerNotifiedOfEpisodeCreation": true
  }
}

Response

{
  "_id": "376b0200-28fe-11f1-b591-3fdcef396aba",
  "alertCount": 100,
  "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
  "isManuallyCreated": true,
  "isOnCallPolicyExecuted": true,
  "isOwnerNotifiedOfEpisodeCreation": true
}
POST/api/alert-episode/count

Count

This endpoint allows you to retrieve the count of all your Alert Episode.

Optional Request Body

Count Request

POST
/api/alert-episode/count
Headers
Content-Type: application/json
ApiKey: YOUR_API_KEY
Body
{
  "query": {
    "title": "Example title"
  }
}

Response

{
  "count": 107
}
POST/api/alert-episode

Create Alert Episode

This endpoint allows you to create a new object.

Create Request

POST
/api/alert-episode
Headers
Content-Type: application/json
ApiKey: YOUR_API_KEY
Body
{
  "data": {
    "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
    "isManuallyCreated": true,
    "projectId": "550e8400-e29b-41d4-a716-446655440000",
    "title": "Example title",
    "alertGroupingRule": "Example alert grouping rule"
  }
}

Response

{
  "_id": "376b0200-28fe-11f1-b591-3fdcef396aba",
  "alertCount": 100,
  "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
  "isManuallyCreated": true,
  "isOnCallPolicyExecuted": true,
  "isOwnerNotifiedOfEpisodeCreation": true
}
PUT/api/alert-episode/:id

Update by ID

This endpoint allows you to update object by its ID.

Alternative Methods

For clients that do not support PUT requests, you can use POST or GET with the same request headers and body:

POST/api/alert-episode/:id/update-item
GET/api/alert-episode/:id/update-item

Update Request

PUT
/api/alert-episode/:id
Headers
Content-Type: application/json
ApiKey: YOUR_API_KEY
Body
{
  "data": {
    "currentAlertStateId": "550e8400-e29b-41d4-a716-446655440000",
    "title": "Example title",
    "alertGroupingRule": "Example alert grouping rule"
  }
}

Response

{}
DELETE/api/alert-episode/:id

Delete by ID

This endpoint allows you to delete object by its ID.

Alternative Methods

For clients that do not support DELETE requests, you can use POST or GET with the same request headers and body:

POST/api/alert-episode/:id/delete-item
GET/api/alert-episode/:id/delete-item

Delete Request

DELETE
/api/alert-episode/:id
Headers
Content-Type: application/json
ApiKey: YOUR_API_KEY

Response

{}

Permissions

Your API Token needs permissions to create, update, read or delete this resource. If you do not have permissions to make a request a 4xx status will be sent as response.

Read Permissions

Required to read Alert Episode

  • Project Owner
  • Project Admin
  • Project Member
  • Read Alert Episode
  • Read All Project Resources

Create Permissions

Required to create Alert Episode

  • Project Owner
  • Project Admin
  • Project Member
  • Create Alert Episode

Update Permissions

Required to update Alert Episode

  • Project Owner
  • Project Admin
  • Project Member
  • Edit Alert Episode

Delete Permissions

Required to delete Alert Episode

  • Project Owner
  • Project Admin
  • Project Member
  • Delete Alert Episode