Sentry
Navi.sh supports both issue alerts and metric alerts from Sentry. Issues and metric alerts auto-resolve when Sentry sends a resolved action.
POST
/v1/events/sentry/{token}Setup in Sentry
- In the Navi.sh dashboard, go to Integrations → Sentry and copy your integration URL.
- In your Sentry project, go to Settings → Integrations → Webhooks.
- Click Add to Project.
- Set the Webhook URL to the integration URL you copied above:
https://api.navi.sh/v1/events/sentry/<token> - Under Events, enable:
- issue — for issue alerts
- metric_alert — for metric/performance alerts
- Click Save Changes.
- Create Alert Rules in Alerts → Alert Rules and assign them to this webhook integration.
Auto-resolve
- Issue alerts: auto-resolved when Sentry sends
action: "resolved". - Metric alerts: auto-resolved when
action: "resolved"ordata.metric_alert.status: "resolved".
Severity mapping
| Sentry level | Navi.sh |
|---|---|
fatal / critical | critical |
error | error |
warning | warning |
info / debug / other | info |
POST /v1/events/sentry/{token}
Accepts Sentry issue alert and metric alert webhook notifications. Configure a Webhook integration in your Sentry project settings and subscribe to issue and metric_alert events.
Issues auto-resolve when action is "resolved". Metric alerts auto-resolve when action is "resolved" or data.metric_alert.status is "resolved".
The token is generated in your navi.sh workspace under Integrations.
Payload schema
| Field | Type | Description |
|---|---|---|
action | string (created, resolved, assigned, ignored) | Lifecycle action. For issues: created, resolved, assigned, etc. For metric alerts: critical, warning, resolved. (example: created) |
data | `` | Contains either issue or metric_alert depending on alert type. |
Examples
Issue Alert
json
{
"action": "created",
"data": {
"issue": {
"id": "1234567",
"level": "error",
"permalink": "https://sentry.io/organizations/acme/issues/1234567/",
"project": {
"name": "backend",
"slug": "backend"
},
"title": "ValueError: invalid literal for int()"
}
}
}Metric Alert
json
{
"action": "critical",
"data": {
"description_text": "Error rate is 8.3% (threshold: 5%)",
"metric_alert": {
"id": "987",
"status": "critical",
"title": "High Error Rate"
}
}
}Response codes
- 202 — Accepted — processing is asynchronous
- 400 — Invalid request body (malformed JSON or wrong content type)
- 401 — Invalid service token
- 500 — Unexpected server error