rust.solutions

Huck Notify API

notify.rust.solutions relays JSON payloads to registered webhook URLs and keeps a delivery log. All routes except GET /healthz require Authorization: Bearer <token>.

Endpoints

MethodPathDescription
GET/healthzLiveness check, no auth
PUT/c/{channel}Create/update channel {"url": "https://..."}
DELETE/c/{channel}Remove channel and its log
GET/cList channels
POST/n/{channel}Forward arbitrary JSON body to the channel URL
GET/n/{channel}/logLast 50 deliveries, newest first

Channel names match [A-Za-z0-9._-]{1,64}; bodies up to 32 KiB are forwarded verbatim with a 10 second timeout. Delivery status is logged per attempt; the last 100 attempts per channel survive restarts.

Example

curl -X PUT https://notify.rust.solutions/c/alerts \
  -H "Authorization: Bearer $HUCK_TOKEN" -H "Content-Type: application/json" \
  -d '{"url": "https://hooks.example.com/abc123"}'

curl -X POST https://notify.rust.solutions/n/alerts \
  -H "Authorization: Bearer $HUCK_TOKEN" -d '{"text": "disk 92% on moon"}'
{"delivered":true,"status":200}