Webhooks
Outbound HTTP callbacks when graphs complete, fail, or pause. HMAC-signed payloads for verification.
LIVE
Webhooks
Configure outbound hooks at GET|POST /_resuma/webhooks — fires on graph lifecycle events.
Registers an on-site inbox at /_resuma/demo/webhook-inbox, fires a sample graph.done payload (with X-Resuma-Signature when RESUMA_WEBHOOK_SECRET is set), and shows the JSON received.
Events
graph.done— successful completiongraph.failed— worker error or operator cancelgraph.paused— cooperative pause
Register via env (boot)
RESUMA_WEBHOOK_URLS=https://hooks.example.com/resuma,https://backup.example/hooks
RESUMA_WEBHOOK_SECRET=<openssl rand -hex 32>Register via HTTP
POST /_resuma/webhooks
Authorization: Bearer $RESUMA_EXEC_API_KEY
{ "url": "https://hooks.example.com/resuma", "events": ["graph.done", "graph.failed"] }Payload & signature
POST https://your-endpoint
Content-Type: application/json
X-Resuma-Signature: sha256=<hmac-sha256-hex>
{
"event": "graph.done",
"graph_id": "g_...",
"worker": "summarize",
"status": "done",
"timestamp_ms": 1710000000000,
"duration_ms": 1234,
"result": { ... }
}Verify with RESUMA_WEBHOOK_SECRET. Outbound URLs are SSRF-checked; HTTP redirects are disabled.