---
title: "Case triggers"
description: "Start Tracecat workflows from case events: react to case creation, status changes, and field updates to drive automated triage and response."
icon: "lock"
---

## Overview

Case triggers start a workflow when selected case events happen.

![Case trigger](/img/triggers/case-triggers.png)

## Trigger payload

Case trigger data is available under `${{ TRIGGER }}`.

Fields:

- `${{ TRIGGER.case_id }}`: case ID.
- `${{ TRIGGER.event }}`: event details.
- `${{ TRIGGER.tags }}`: case tags.
- `${{ TRIGGER.workspace_id }}`: workspace ID.

Example payload:

```json
{
  "case_id": "case_01abc",
  "event": {
    "id": "evt_01abc",
    "type": "comment_created",
    "data": {
      "comment_id": "cmt_01abc"
    },
    "created_at": "2026-03-19T14:22:00+00:00",
    "user_id": "usr_01abc",
    "wf_exec_id": null
  },
  "tags": [
    {
      "id": "tag_01abc",
      "ref": "triage",
      "name": "Triage",
      "color": null
    }
  ],
  "workspace_id": "ws_01abc"
}
```

## Case events

One or more case events must be selected before the trigger is enabled. Supported event families include:

- Case events such as create, update, close, reopen, and view.
- Comment events such as comment and reply activity.
- Field changes such as status, priority, severity, assignee, and payload changes.
- Tag events such as tag add and remove.
- Task events such as task create, delete, and workflow or assignee changes.
- Attachment events such as add and remove.
- Dropdown changes.

## Tag allowlist

Restrict runs to cases with matching tags. If the allowlist is empty, no tag filtering is applied. Matching uses the case's current tags.

## Important behavior

Workflow-originated case events are ignored to avoid loops.
