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
| Method | Path | Description |
|---|---|---|
| GET | /healthz | Liveness check, no auth |
| PUT | /c/{channel} | Create/update channel {"url": "https://..."} |
| DELETE | /c/{channel} | Remove channel and its log |
| GET | /c | List channels |
| POST | /n/{channel} | Forward arbitrary JSON body to the channel URL |
| GET | /n/{channel}/log | Last 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}