Public docs
Alerts & Lifecycle
How alerts are created, what the fields mean, and how the Active → Resolved lifecycle works.
What an alert is
An alert represents a single risk event — something that happened (or is about to happen) in your product that may impact one or more partners. It captures what changed, how severe it is, who is affected, and where it came from.
---
Alert fields
| Field | Description | |---|---| | severity | High, Medium, or Low — your team's assessment of the impact level | | summary | A plain-language description of what changed and why it matters | | partners | Array of partner names known to be affected | | alert_type | Category: Auth Change, API Deprecation, Billing Change, Data Schema Change, General | | source | Where the alert came from: manual or ai_ingested | | action | Optional field for recommended action (e.g., "Migration required by March 31") | | resolved_at | Null when active. Set to a timestamp when resolved. |
---
Alert status: Active vs. Resolved
opSentry uses a derived status model — there is no status column in the database. Status is computed:
resolved_at = null→ the alert is Activeresolved_atis a timestamp → the alert is Resolved
This keeps the data model clean and makes status transitions atomic and auditable. You resolve an alert by calling PUT /alerts/{alert_id}/status with {"status": "resolved"} — or by using the Resolve button in the UI.
Severity is independent of status. When you resolve a High severity alert, it remains High in the resolved state. This matters for historical analysis and 30-day metrics.
---
Creating alerts manually
From the Alerts page in the dashboard, use the Create Alert panel. You'll set:
- Severity
- Summary
- Affected partners (selected from your partner map)
- Alert type
- Optional action / recommended response
---
AI ingest
The AI pipeline creates alerts automatically from changelog text. Send a POST request to /ingest/changelog with your raw changelog and workspace ID. opSentry will:
- Run GPT-4o-mini analysis on the changelog
- Extract severity, summary, alert type, and impacted scopes
- Cross-reference impacted scopes against your partner map to auto-populate the partners list
- Create a tracked alert in your workspace with
source: "ai_ingested"
AI-ingested alerts are visually distinguished in the Alert Log with an AI badge.
See the POST /ingest/changelog reference in the App API section for full details.
---
Resolving alerts
From the Alert Log, click any alert to open its detail panel. Hit Resolve to mark it resolved. The alert moves to the Resolved filter in the log and its resolved_at timestamp is set. You can re-activate it by setting status back to active.
---
Alert severity on partner cards
Alert severity propagates throughout the product. On the Partner Onboarding board and Company Overview, each partner card shows a color-coded health badge derived from their highest active alert severity:
- Red — High
- Amber — Medium
- Blue — Low
- Green — Healthy (no active alerts)
This connects your engineering changes directly to your onboarding pipeline, so CSMs can see at a glance which partners need attention right now.