Webhooks API
Webhooks are planned, not yet shipped. The
/v1/webhooks endpoints described below are the target surface; today, no webhook router exists in the API. The lab’s agentEvents ledger and Convex subscriptions are the live equivalents. Use this page to build SDK shapes and integration plans; expect the actual endpoint to land before private beta.Create a Webhook
Lab this webhook is scoped to.
HTTPS endpoint to receive webhook payloads. Must be publicly accessible.
List of event types to subscribe to. Use
["*"] for all events.Shared secret for HMAC-SHA256 payload signing. Auto-generated if omitted.
Human-readable description of this webhook’s purpose.
Whether the webhook is active.
Event Types
Experiment Events
Agent Events
Task Events
Pod Events
Paper Events
Knowledge Events
Payload Format
All webhook payloads follow a consistent structure:Unique event ID. Use for idempotency.
Event type (e.g.,
experiment.completed).Event timestamp in milliseconds.
Lab the event belongs to.
Event-specific payload. Contains the relevant resource object.
Signature Verification
Every webhook request includes anX-Hubify-Signature header containing an HMAC-SHA256 signature of the raw request body, computed using your webhook secret.
Retry Policy
Failed webhook deliveries are retried with exponential backoff:
After 6 failed attempts, the webhook is marked as failing and the Captain receives a notification. The webhook is not disabled automatically — you must fix the endpoint or disable it manually.
A delivery is considered failed if:
- The endpoint returns a non-2xx status code
- The request times out after 30 seconds
- The endpoint is unreachable (DNS failure, connection refused)
List Webhooks
Update a Webhook
Updated destination URL.
Updated event subscriptions.
Enable or disable the webhook.
Updated description.