netcup
netcup
Manage orgs
Manage orgs
Group your servers — an org owns N servers
Orgs
netcup
New org
Renders every chart & timestamp for this org's servers. Blank uses UTC.
Create org
Edit org
Delete
Renders every chart & timestamp for this org's servers. Blank uses UTC.
Save changes
servers
runa.us
Online
region
us-east-1 · netcup
uptime
7h 23m
Search pods, logs, actions…
⌘
K
Overview
Alerts
New destination
POST a request to this target when an alert fires or resolves
Name
Webhook URL
http(s) endpoint we POST to. The eye reveals it.
Auth header (optional)
Header name + value. Blank = no auth; value blank on edit keeps it.
Notify on
Firing
Resolved
Enabled
Body template (optional)
Tokens
{{rule}}
rule name
{{state}}
firing / resolved
{{target}}
host or pod label
{{metric}}
cpu / memory / disk / req_s
{{value}}
current value (rounded)
{{threshold}}
configured threshold
{{peak}}
peak value in the window
{{unit}}
% or "req/s"
{{server}}
server name
{{started_at}}
fired at (your timezone)
{{resolved_at}}
resolved at (blank while firing)
{{url}}
link to /alerts (needs APP_BASE_URL)
{{event_action}}
PagerDuty: trigger / resolve
{{dedup_key}}
stable de-dup hash (PagerDuty)
Filters (Liquid-style)
slice: start, len
{{dedup_key | slice: 0, 6}} → first 6 chars
truncate: n
{{rule | truncate: 40}} → clip + …
upcase / downcase
{{metric | upcase}}
capitalize
{{state | capitalize}} → Firing
strip
trim surrounding whitespace
replace: a, b
{{target | replace: "/", "-"}}
append / prepend
{{value | append: "%"}}
default: x
{{resolved_at | default: "—"}}
Examples
"text": "🚨 {{rule}} — {{state}}"
"dedup_key": "{{dedup_key | slice: 0, 8}}"
"summary": "{{rule | truncate: 60}}"
Format
Templates
Slack
Telegram
PagerDuty
Zapier
Valid JSON, sent as-is — blank uses the default payload. Tap
for tokens & filters.
esc
↑
↓
navigate
↵
select
esc
dismiss
—
results
Confirm
Are you sure?