Skip to main content
Webhook subscriptions tell Champ to POST an event to a URL you control whenever a workflow run reaches a terminal state. Subscriptions are tenant-scoped — one subscription fires for every workflow run in your organization that matches the subscribed event. There is no per-workflow filtering today; filter on workflow_id in your handler if you only care about specific workflows.

Prerequisites

A webhook destination is modeled as a REST API integration, so Champ can reuse its auth config when delivering events. Add one first:
  1. Follow Add a REST API integration.
  2. Set Base URL to the root of your webhook receiver (e.g. https://hooks.yourapp.com).
  3. Configure Authentication — this is how your handler will verify that a request actually came from Champ. See Authentication.

Create a subscription

  1. Go to Account → Webhooks.
  2. Under Active Webhooks, click Create Webhook.
  3. Fill in the fields:
Create Webhook dialog
Connection
string
required
The REST API integration that will receive deliveries. The full URL Champ POSTs to is the connection’s Base URL plus the Path you set below.
Path
string
required
The path on the destination (e.g. /webhooks/champ). Must start with /.
Event
enum
required
Which event to subscribe to. See available events.
  1. Click Create. New subscriptions start in the active state and begin firing on the next qualifying run.
You can pause, resume, or delete subscriptions from the same page. Pausing stops new deliveries without clearing past events from the Recent Events list.

Available events

EventFires when
workflow_run.completedA workflow run finishes successfully
workflow_run.failedA workflow run terminates with an error
Each subscription listens for exactly one event type. To receive both completed and failed, create two subscriptions (they can point to the same path).

Recent Events

Webhooks page with Active Webhooks and Recent Events
Every delivery attempt is recorded under Recent Events. Each row shows:
  • Statuspending, in_progress, completed, or failed
  • Event type
  • Destination URL
  • Created and delivered timestamps
  • The full payload (expandable JSON view)
Use this to debug integrations during setup or confirm that a specific run fired. See Payloads & delivery for what to expect in your handler.