Skip to main content
Webhooks deliver signed event payloads to your URL when nodes or phases are created, updated, or deleted. Use them to connect ProductBrain to Make.com, Zapier, n8n, or any workflow tool.

Register a webhook

  • url must be HTTPS and publicly routable
  • events is optional, omit to subscribe to all six event types
  • Maximum 10 webhooks per project
Response:
The secret is returned once at registration. Store it. You’ll need it to verify signatures.

Event types

Phases are named iteration in the API. The event names and the payload field are the stable API identifier and won’t change. The product UI calls the same thing a phase.

Payload

For iteration events, the payload includes iteration instead of node. Rename events include previous_name.

Headers

Verifying signatures

Delivery semantics

At-least-once. Every event is persisted durably before the first attempt, so a receiver that’s briefly down never loses it. We attempt delivery immediately. If your endpoint returns a non-2xx status or doesn’t respond within 5 seconds, we retry with exponential backoff (~2, 4, 8, 16, 32 minutes) up to 6 attempts total, then mark the delivery failed. Because it’s at-least-once, your receiver must be idempotent. The same event can arrive more than once (e.g. you process it but acknowledge past the 5-second window, so we retry). Dedup on X-ProductBrain-Delivery, which is stable across every retry of one event. Each attempt re-signs the body with your webhook’s current secret, so rotating the secret never breaks an in-flight retry.
  • Health monitoring. GET /api/v1/webhooks returns the last delivery time and HTTP status per webhook. Poll it to monitor health.
  • Reconcile failures. A delivery that exhausts all 6 attempts is marked failed and not retried further. Catch up by reading GET /api/v1/nodes.

List webhooks

Delete a webhook

Integration guides

Webhooks power the delivery tracker integrations via Make.com: