signaloid-cli webhooks
Manage webhooks for event notifications.
Synopsis
signaloid-cli webhooks <command> [options]
Description
The webhooks command group allows you to configure webhooks to receive real-time notifications about builds, tasks, and other events in your Signaloid account.
Subcommands
- list - List all webhooks
- get - Get details about a specific webhook
- create - Create a new webhook
- update - Update webhook configuration
- delete - Delete a webhook
- stats - Get webhook statistics
- enable - Enable a webhook
- disable - Disable a webhook
Webhook Events
The API accepts the following event names. The API rejects any other event name with HTTP status 400.
| Event | Description |
|---|---|
task-status | A task changed status (Initialising, In Progress, Rescheduled, Completed, Cancelled, or Stopped). A failed task is reported as Stopped, with the reason in Message. |
build-status | A build changed status, with the same statuses as task-status. A failed build is reported as Stopped, with the reason in Message. |
task-count | The number of tasks in your account changed, because a task was created or finished. |
build-count | The number of builds in your account changed, because a build was created or finished. |
task-stats | The task execution statistics of your account changed (dynamic instructions and execution time). |
build-stats | The build statistics of your account changed (build size and build time). |
The platform disables a webhook automatically after a number of failed deliveries. For more details, see webhooks disable.
Delivery payload
Each delivery is an HTTP POST with a JSON body in payload version 2.0:
{
"Version": "2.0",
"ID": "whevt_1234567890abcdef1234567890abcdef",
"Event": "task-status",
"Created": "2026-03-20T10:00:00Z",
"Data": {
"TaskID": "tsk_1234567890abcdef1234567890abcdef",
"Status": "Completed",
"Message": "Task completed",
"UpdatedAt": "2026-03-20T10:00:00Z"
}
}
For build-status, Data holds BuildID in place of TaskID. For the count and stats events, Data holds UserID, Object, and ResourceUsage with the counters of that event.
Version 2.0 made every field name PascalCase. The earlier version 1.0 payload, with version, id, event, created, and data, is no longer sent, so update any receiver that reads those fields.
Verifying a delivery
Each delivery carries these headers:
Signaloid-Webhook-Id: the delivery'sID.Signaloid-Webhook-Timestamp: when the delivery was signed, as a Unix time in seconds.Signaloid-Webhook-Signature:sha256=followed by the hex HMAC-SHA256 of<timestamp>.<raw request body>, keyed with the webhook'sSecret.Signaloid-Webhook-Version: the payloadVersion.
The Secret is shown only once, in the output of webhooks create. Save it when you create the webhook.
See Also
- signaloid-cli builds - Build events
- signaloid-cli tasks - Task events
Learn More
- Webhooks API reference - Webhook endpoints, payloads, and responses