The GitHub Trigger fires a workflow when GitHub sends a webhook event โ such as a push to a branch, a new pull request, or an issue being opened. It automatically validates GitHub's HMAC-SHA256 signature so only genuine GitHub events can start your workflow.
github_triggerGitHub can send webhook notifications for a wide range of repository and organisation events: every time someone pushes a commit, opens or closes a pull request, comments on an issue, creates a release, or dozens of other actions. The GitHub Trigger lets you respond to any of these events directly in a Flusso workflow.
GitHub signs its webhook payloads using HMAC-SHA256 with a secret you define. The signature
is included in the X-Hub-Signature-256 header of every request. The GitHub
Trigger verifies this signature automatically, rejecting any request that does not have a
valid signature. This ensures that only real events from GitHub โ not spoofed requests from
other sources โ can trigger your workflow.
You can optionally filter the trigger to fire only for a specific GitHub event type using
the Event Filter field. For example, setting it to push means
the workflow will only run when someone pushes to the repository, ignoring pull requests,
issues, and all other events even if GitHub sends them to the same endpoint.
| Field | Required | Description |
|---|---|---|
| Webhook Secret | Required | A secret string you choose and enter both here and in GitHub's webhook configuration. Flusso uses this to verify that incoming requests genuinely came from GitHub by validating the HMAC-SHA256 signature. |
| Event Filter | Optional |
A single GitHub event type to filter on (for example, push,
pull_request, issues, release). If left
blank, the trigger fires for all event types that GitHub sends. See the
GitHub webhook events reference
for the full list of available event types.
|
application/json.
| Variable | Type | Description |
|---|---|---|
trigger.output.payload |
Object | The full GitHub event payload. The structure varies by event type โ refer to the GitHub docs for details. |
trigger.output.event |
String | The value of the X-GitHub-Event header โ the event type, e.g. push, pull_request, issues. |
trigger.output.headers |
Object | All HTTP request headers, including x-github-event and x-hub-signature-256. |
push.
{{ trigger.output.payload.ref }} equals refs/heads/main.
{{ trigger.output.event }}. This lets you handle
push, pull_request, and issues events with different logic in the same workflow.
openssl rand -hex 32. Short or
guessable secrets defeat the purpose of signature validation.