Docs / Integrations / HTTP Webhook

Integrate runtimes with the unified HTTP adapter.

Use one runtime contract for custom agents, webhooks, or orchestrators. Register runtime, call intent checks, fail closed on deny/timeout, and export evidence.

Where to hook intent checks

Call `POST /adapters/http/intent` at the exact point where side effects would occur.
Always call before side effects, not after.
Pass correlation IDs for traceability.

Payload mapping to /adapters/http/intent

{ "tenant_id": "acme", "runtime_id": "http-webhook-01", "agent_id": "agent-01", "intent": "update_customer", "requested_scopes": ["update_customers"], "tool": "crm", "context": {"source": "http-webhook", "workflow": "demo"}, "requested_budget": 1.0, "work_type": "execution", "correlation_id": "req-123" }

Fail-closed behavior

Required: if Gvner is unreachable, returns DENIED, or response is invalid, do not execute. Treat as blocked and log audit context.

Sample wrapper pattern

# before side effect decision = guvna_evaluate(intent) if decision["decision"] != "ALLOWED": raise RuntimeError(decision["reason"]) # execute side effect only after ALLOWED

Relevant console pages

Evidence and exports

Export evidence packets from Exports.
Use Receipts for integrity checks.
Use Regulator Packets for external review.