Configuration
Deployment defaults
Apply to every job.| Variable | Description |
|---|---|
DEFAULT_WEBHOOKS | Comma-separated named webhook ids. |
DEFAULT_WEBHOOK_URLS | Comma-separated raw URLs. |
Per-job
On submission, pass awebhook field. Combined additively with the defaults.
Request behaviour
| Variable | Default | Description |
|---|---|---|
WEBHOOK_TIMEOUT | 15s | Per-request timeout. |
WEBHOOK_MAX_RETRY | 4 | Max retries before giving up. |
WEBHOOK_RETRY_MIN_WAIT | 1s | Initial back-off. |
WEBHOOK_RETRY_MAX_WAIT | 30s | Max back-off. |
WEBHOOK_SECRET | secret | HMAC-SHA256 signing secret. |
Event payload
Each POST carriesContent-Type: application/json. Payload shape:
Event kinds
event | Fires |
|---|---|
job.queued | Immediately after submission. |
job.started | When a worker claims the job. |
job.progress | Between tasks. Body includes the completed task list so far. |
job.completed | On successful pipeline finish. |
job.failed | On any task failure. error is populated. |
Signing
Every request carries anX-Greenlight-Signature: sha256=<hex> header over the raw request body, using WEBHOOK_SECRET. Verify in your receiver:
Webhook status
TheGET /webhooks endpoint returns the current webhook configuration and recent delivery attempts.