Skip to main content
GitHub Actions can react to a wide range of webhook events. This guide covers four key triggers—workflow_dispatch, repository_dispatch, workflow_call, and workflow_run—to help you automate and chain your CI/CD pipelines efficiently.
The image is a table listing various trigger events, with some highlighted in green and red, related to GitHub actions or workflows.

1. workflow_dispatch

The workflow_dispatch event enables manual, on-demand execution of workflows. You can define custom inputs to parameterize each run:
After pushing this file, go to the Actions tab, choose Manual Trigger Demo, click Run workflow, and provide a value for message.
If you omit required: true, the input becomes optional and can be left blank.

2. repository_dispatch

Use repository_dispatch to fire workflows from external systems via an HTTP POST:
Trigger it with:
Ensure your GITHUB_TOKEN has repo scope; otherwise the API request will fail with a 403 error.

3. workflow_call

The workflow_call event helps you define reusable workflows that other workflows can invoke. This promotes DRY principles across repositories:
Invoke it from another workflow:
Reusable workflows accept with and secrets inputs, making them highly parameterized and secure.

4. workflow_run

Chain workflows by listening to the completion of another workflow. For example, deploy only after a successful build:

Build Workflow

Deployment Workflow

You can filter on types (completed, requested, in_progress) and branch logic using ${{ github.event.workflow_run.conclusion }}.

Watch Video

Practice Lab