Workflow Webhooks

Zipline Hub can send a notification when a workflow starts, succeeds, fails, or is cancelled. Webhooks are managed by an operator in Zipline UI.

Before creating a webhook

The UI lists real teams that have been synchronized from compiled configuration. Run a normal Zipline command that compiles and uploads configuration, such as zipline hub backfill, run-adhoc, schedule, schedule-all, streaming redeploy, or eval

Create and manage hooks

img.png
img.png
Open Admin > Webhooks and click New webhook. A webhook belongs to one Team and has either an All branches scope or an explicit non-empty subset of that Team's active branches. All branches is dynamic: it also applies when that Team is synchronized on a future branch. A subset can contain only branches where the Team is currently active. Operators can edit the scope, rename, reveal, and delete hooks.

The list masks URLs, header values, and additional values. Use Reveal only when needed; those operations are restricted to operators and audited.

Webhooks are immutable and cannot be edited in place.

Webhook values

Hub stores webhook URLs, header values, and PagerDuty routing keys exactly as entered.

Slack

For Slack choose Slack, provide a name and a Slack incoming-webhook URL at https://hooks.slack.com, then optionally add headers, workflow-type filters, event filters, and a run mode.

For example, this UI configuration sends only failures and cancellations from ad-hoc backfills:

Field Value
Name data-alerts
URL https://hooks.slack.com/services/...
Workflow types backfill
Run mode Ad-hoc only
Events FAILED, CANCELLED

Leave workflow types and events unset to match all workflow types and all transitions. All runs is the default and sends for both scheduled and manually submitted workflows. Scheduled only sends only for scheduled workflows, while Ad-hoc only sends only for manually submitted workflows.

PagerDuty

For PagerDuty select PagerDuty and enter its routing key. Hub fixes the endpoint to https://events.pagerduty.com/v2/enqueue, requires the routing_key, and sends only failed or cancelled workflow notifications. PagerDuty event subscriptions cannot be customized.

Use the PagerDuty integration key itself:

Field Value
Name oncall
Routing key Your PagerDuty integration key

Hub sends the PagerDuty dedup_key derived from the workflow, so repeat notifications update the same incident instead of opening one per retry.

Mentioning a Slack user

The optional per-workflow Slack mention is registered locally, not configured on the webhook:

zipline hub register-webhook-user-mention

Enter the Slack member ID (for example U012ABCDEF), not a display name or email. Hub includes that mention when the workflow notification supports it. The value is stored in ~/.zipline/webhooks.json with owner-only permissions; changing or removing webhooks does not affect it.

Edit this page