Recipes for tools
Copy-paste setups for Uptime Kuma, Grafana, GitHub Actions, Sentry and Apprise.
Each recipe uses a hook: create one on the recipient's page in the dashboard, copy its URL, and paste it into the tool with the ending shown below. Menus move between versions of these tools, so the steps name each field by what it does; the URL is what matters.
Uptime Kuma#
- Open Settings → Notifications and set up a new notification.
- Choose the Discord notification type.
- Paste the hook URL ending in
/discordinto the Discord webhook URL field. - Use Test to check it, then turn the notification on for your monitors.
⫻
Discord webhook URL
Uptime Kuma's Discord messages carry an embed with a title and fields, so the notification shows the monitor's state as the title and its details as the body. The Slack notification type works the same way with the URL ending in /slack.
Grafana alerting#
- Open Alerting → Contact points and add a contact point.
- Pick the Discord integration and paste the URL ending in
/discordas its webhook URL. Or pick Slack and paste the URL ending in/slackas its webhook URL, leaving the bot token empty. - Use Test to send a sample alert, save, and route alerts to the contact point in your notification policies.
The alert's title and message become the notification's title and body. When the message carries a link to the alert, it becomes the notification's link.
GitHub Actions#
- Add the plain hook URL as a repository secret named
PUSH_HOOK(Settings → Secrets and variables → Actions). - Add this step at the end of a job.
if: always()makes it run when earlier steps fail too.
⫻
workflow step
- A failed job is sent as
urgent; a passing one gets the default priority,high. Clickopens the run, and theIdempotency-Keymakes a retried step send nothing new for the same run attempt.
Sentry and Slack-compatible tools#
Any tool that asks for a Slack incoming webhook URL can send to Push: paste the hook URL ending in /slack where it wants the Slack URL. GitLab's Slack notifications integration, for example, takes such a URL.
⫻
Slack webhook URL
Apprise#
Apprise's jsons:// service posts its JSON notification to any HTTPS URL. Give it the hook with the /apprise ending and without the https://:
- Apprise's notification type sets the priority:
infoandsuccessarenormal,warningishighandfailureisurgent. - Tools built on Apprise take the same URL wherever they accept an Apprise URL.
Anything that can send an HTTP request#
Tools with a generic HTTP or webhook step can call the plain hook: put the title in a Title header and the text in the body. See Shell one-liners for scripts and cron jobs.
⫻
curl