The Webhook Trigger fires a workflow run each time an HTTP POST request is received at the workflow's unique webhook URL. It is the most common integration point between Flusso and external applications, enabling any system that can send HTTP requests to start a workflow and pass it data in real time.
webhook_triggerEvery workflow that uses a Webhook Trigger is assigned a permanent, unique URL. When an external service โ such as a payment processor, a form builder, a CRM, or any custom application โ sends an HTTP POST request to that URL, Flusso fires the workflow immediately. The full request body, request headers, and HTTP method are all captured and made available to subsequent steps as output variables.
The Webhook Trigger is unopinionated about the shape of the incoming data. Whether the
sender sends a simple flat JSON object or a deeply nested payload, the entire body lands in
{{ trigger.output.payload }} exactly as received. This makes the Webhook Trigger
suitable for integrating with virtually any third-party service that supports outbound
webhooks.
To protect your workflow from unauthorised callers, the Webhook Trigger supports two authentication modes: Header Secret (a shared secret token checked in a named header) and HMAC Signature (a cryptographic hash of the request body verified with a signing key). You should always configure one of these in production.
The webhook URL for your workflow is shown at the top of the Webhook Trigger's configuration drawer. It follows this format:
Copy this URL and paste it into the webhook configuration of the external service you want to connect. The URL is permanent โ it does not change even if you rename the workflow.
| Field | Required | Description |
|---|---|---|
| Auth Type | Required |
How to authenticate incoming requests. Choose one of:
|
| Header Name | Conditional |
Only shown when Auth Type is set to Header Secret. The
name of the HTTP header the sender must include (for example,
X-Webhook-Token or Authorization).
|
| Secret | Conditional | The secret value (for Header Secret mode) or the HMAC signing key (for HMAC Signature mode). In Header Secret mode, Flusso rejects requests where the header value does not exactly match this string. In HMAC mode, Flusso computes the expected signature and rejects requests where the signatures do not match. |
The Webhook Trigger exposes three output variables to downstream steps:
| Variable | Type | Description |
|---|---|---|
trigger.output.payload |
Object / Array | The full request body, parsed as JSON. If the sender sends form data, it is converted to an object. |
trigger.output.headers |
Object | All HTTP request headers as key-value pairs (header names are lowercased). |
trigger.output.method |
String | The HTTP method of the incoming request (always POST for standard webhook senders). |
X-Form-Token as the header name, and choose a long random string as the secret.
X-Form-Token: your-secret. The form fields will arrive
in the payload.
{{ trigger.output.payload.name }} and
{{ trigger.output.payload.email }}.