Event Types
Every webhook event Trasys can deliver, including alert.fired, incident.created, incident.updated, and incident.resolved, with full JSON payload schemas.
Every webhook POST has this top-level shape:
{
"event": "<event-type>",
"data": { ... },
"attempt": 1
}event— the event type string (see below)data— event-specific payloadattempt—1for the first delivery,2for the retry
alert.fired
Sent when an alert rule threshold is crossed and an incident is created.
{
"event": "alert.fired",
"data": {
"ruleId": "a1b2c3d4-...",
"ruleName": "High error rate",
"metricValue": 12.4,
"incidentId": "e5f6a7b8-...",
"triggeredAt": "2026-06-18T10:00:00.000Z"
},
"attempt": 1
}alert.resolved
Sent when an alert rule returns to a normal state after firing.
{
"event": "alert.resolved",
"data": {
"ruleId": "a1b2c3d4-...",
"resolvedAt": "2026-06-18T10:30:00.000Z"
},
"attempt": 1
}incident.created
Sent immediately after an incident row is created (fires alongside alert.fired).
{
"event": "incident.created",
"data": {
"incidentId": "e5f6a7b8-...",
"projectId": "...",
"status": "triggered",
"ruleId": "a1b2c3d4-...",
"triggeredAt": "2026-06-18T10:00:00.000Z"
},
"attempt": 1
}incident.updated
Sent when an incident is acknowledged (status changes from triggered → acknowledged).
{
"event": "incident.updated",
"data": {
"incidentId": "e5f6a7b8-...",
"status": "acknowledged",
"acknowledgedAt": "2026-06-18T10:05:00.000Z"
},
"attempt": 1
}incident.resolved
Sent when an incident is resolved.
{
"event": "incident.resolved",
"data": {
"incidentId": "e5f6a7b8-...",
"status": "resolved",
"resolvedAt": "2026-06-18T10:45:00.000Z"
},
"attempt": 1
}nudge.triggered
Sent when the nudge detection engine identifies an unusual pattern in your metrics.
{
"event": "nudge.triggered",
"data": {
"nudgeId": "...",
"message": "Error rate on api-server is 3× above baseline",
"severity": "warning",
"detectedAt": "2026-06-18T10:10:00.000Z"
},
"attempt": 1
}anomaly.detected
Sent when the ML-based anomaly detector flags a metric.
{
"event": "anomaly.detected",
"data": {
"metricName": "http_request_duration_p95",
"serviceName": "checkout",
"score": 0.94,
"detectedAt": "2026-06-18T10:12:00.000Z"
},
"attempt": 1
}Subscribe only to the events you need. Each endpoint can subscribe to any combination of the 7 event types.
Setup
Create a webhook endpoint, pass URL verification, subscribe to the events you need, and securely store the one-time secret used to sign every delivery.
Security & Verification
Verify incoming Trasys webhook requests are authentic using HMAC-SHA256 signatures and timestamp headers, in the same format Stripe webhooks already use.

