Cases
A case tracks a piece of work that is not (or not yet) an incident: a noisy alert to tune, a recurring error, a slow endpoint, a faulty deployment to follow up. Cases live in a project and are numbered per project (#12).
Fields
Title, description, status (open, in_progress, closed), priority (P1 to P5, default P3), assignee (a project member), and custom attributes (a flat object of at most 50 keys with string, number or boolean values). The timeline records every comment and change: creation, status, priority, assignee, title, description and attribute changes, links and tickets.
Links
A case links to alerts, issues, incidents, insights, traces (32-hex trace id), SLOs, monitors, tickets and URLs (https), at most 200. Alerts, issues, incidents and insights are looked up in the project; another project's id is a 404. Filter the list with linked_kind and linked_ref to find the cases of an object.
Creating cases
By hand:
POST /v1/projects/{prj}/casesor the Cases page.From an alert, issue, incident or insight: pass
from: {kind, id}; the title defaults to the source's and the source is linked. The alert, issue and incident pages have a "Create case" button.Auto-case rules (
/v1/projects/{prj}/case-rules, Manage alerts): a rule watches one source (alertfiring,issuecreated,incidentdeclared,insightopened) and opens a case for every event matching itsmatch:severities,slo_tier(pageorticket),services,kinds,labels,title_contains. One case per rule and source object. A ticket-tier SLO burn becomes a case with{"source": "alert", "match": {"slo_tier": "ticket"}}. Private incidents never match.
Trackers
POST /cases/{case}/tickets with a connector installation files the case:
Jira, Linear and the other trackers: a ticket with two-way sync. Closing the ticket closes the case; closing the case transitions the ticket.
GitHub and GitLab: an issue in one of the installation's repositories. Closing a GitHub issue closes the case (the App must subscribe to
Issuesevents).
Notifications
Cases emit domain events (case.created, case.status_changed, case.assigned, case.priority_changed, case.commented, case.closed). Subscribe a receiver to them in Settings > Event subscriptions, or start from the "Notify on case assigned" workflow template.
API
Route | Access |
|---|---|
| read / respond to incidents |
| read / respond / manage alerts |
| read / respond |
| read / respond |
| respond |
| read / manage alerts |