Documentation
Contents
TL;DR
Yawpr is a Slack bot. One admin sets it up. Everyone else just uses Slack — no website needed.
- Admin signs in at yawpr.dev, creates the group, connects the Slack bot
- Admin runs
/yawp setupin Slack to create teams and add members - Members get a DM with push notification setup — grab the ntfy app for iOS or Android
/yawp fire @oncall DB is down— phones go off- No ack in 15 min? Auto-escalates to the full team
- Monitoring tools auto-create and auto-resolve incidents via webhooks
Admin Setup (one-time)
Only the admin needs to do this. Everyone else just uses Slack.
- Sign in at yawpr.dev/app/login with Slack
- Name your group — this is your isolated workspace (e.g. "Michigan Team"). Other groups in the same Slack workspace won't see your data.
- Connect Slack — from Settings, install the Yawpr bot
- Create teams — in Slack, run
/yawp setup. Create your alert teams (e.g.@michigan-oncalland@michigan-all) - Set escalation —
/yawp team @michigan-oncall→ Set Escalation → pick@michigan-all. Now unacked incidents auto-escalate after 15 minutes.
Done. Everyone the admin added gets a DM with ntfy setup instructions.
Bot Commands
Type /yawp to see all commands.
| Command | What it does |
|---|---|
/yawp setup | Create a team + add members (wizard) |
/yawp teams | List all teams |
/yawp team @slug | Manage team (add/remove members, set escalation, rename, delete) |
/yawp fire | Trigger incident (form) |
/yawp fire @team msg | Quick-fire (no form) |
/yawp status | Active incidents |
/yawp history | Recent incidents |
/yawp stats | 30-day metrics (incident count, avg ack time, avg resolve time) |
/yawp mytopic | DM yourself your ntfy topic (if you lost it or got a new phone) |
On-Call & Escalation
There's no scheduling. Use teams to manage on-call:
- Create a small on-call team (e.g.
@michigan-oncall) with whoever is on duty - Create a full team (e.g.
@michigan-all) with everyone - Set
@michigan-oncallto escalate to@michigan-all - Fire at
@michigan-oncall— if no ack in 15 min, the full team gets paged - Swap on-call by adding/removing members — their ntfy topic carries over
Incidents & Auto-Resolve
When an incident is triggered, every member of the target team gets a Slack DM with Acknowledge/Resolve buttons and an ntfy push notification.
- Fire — requires explicit resolve after ack. Bypasses Do Not Disturb via ntfy.
- Warning / Info — auto-resolves when acknowledged (one click, less noise).
- Deduplication — repeated webhook alerts for the same alarm don't create duplicate incidents.
- Auto-resolve from monitoring — CloudWatch OK, Datadog recovery, or generic
"status": "resolved"webhooks auto-resolve the matching incident.
Push Notifications (ntfy)
When you're added to a team, Yawpr DMs you a unique topic. Install the ntfy app, subscribe to your topic, and you're done. Lost it? Run /yawp mytopic to get it again.
To bypass Do Not Disturb:
- iPhone: Settings → ntfy → Notifications → Time Sensitive Notifications
- Android: Settings → Apps → ntfy → Notifications → Urgent, then allow ntfy in DND exceptions
Webhooks
Connect monitoring tools to auto-create and auto-resolve incidents. Set up via the web dashboard. Supports CloudWatch/SNS, Datadog, and generic JSON.
Each webhook source is routed to a team you choose — point it at your on-call team to get the escalation flow, or at the full team to page everyone directly.
Each source gets a unique URL with HMAC-SHA256 verification. The signing secret is shown once at creation — copy it then. Duplicate alerts are automatically deduplicated by alarm name or alert ID.