Shipfox
Reference

Trigger Sources and Events Reference

Every Shipfox trigger source and its events at a glance: manual fire, Cron schedules, GitHub, Sentry, and custom webhooks.

A trigger has a source and an event. This page lists every source and its events at a glance. For integration sources, the source you write is the integration connection slug (for example github_acme), not the provider name. See Integrations. Setup and payloads live on each integration page.

Sources at a glance

Sourcesource valueEventsSetup
Manualmanual (literal)fireRun manually
Croncron (literal)tickSchedule workflows
GitHubintegration connection slug, e.g. github_acmepush and other repository eventsGitHub
Sentryintegration connection slug, e.g. sentry_acmeissue.created, issue.resolved, issue.assigned, issue.archived, issue.unresolvedSentry
Custom webhookintegration connection slug you choosereceivedCustom webhook
Linear🚧 Coming soonNot availableLinear
Slack🚧 Coming soonNot availableSlack
GitLab🔜 RoadmapNot availableNot available

manual

The built-in on-demand source. Use manual to start a workflow from the dashboard or API without an external integration. At most one manual trigger per workflow.

This trigger fragment belongs under an existing workflow's triggers map:

triggers:
  on_demand:
    source: manual
    event: fire

cron

The built-in schedule source. A Cron trigger uses the literal source cron, the event tick, and a config block with a five-field schedule. The optional time zone is an Internet Assigned Numbers Authority (IANA) time zone. It defaults to UTC.

This trigger fragment belongs under an existing workflow's triggers map:

triggers:
  nightly:
    source: cron
    event: tick
    config:
      schedule: "0 2 * * *"
      timezone: "Europe/Paris"

Cron and manual triggers do not receive an outside event payload. They cannot define a filter. See Schedule workflows for a complete workflow.

Integration sources

For GitHub, Sentry, and custom webhooks, the source is the integration connection slug created when you connect the integration. A single workspace can hold several integration connections of the same provider, disambiguated by slug.

This trigger fragment belongs under an existing workflow's triggers map:

triggers:
  on_push:
    source: github_acme
    event: push

See the Integrations section for setup, the full event list per source, and payload details.

event.ref on a push is the full Git ref (for example refs/heads/main), exactly as the provider sends it, not the bare branch name.

filter

The filter field accepts a CEL expression that narrows which integration events fire a trigger. It is evaluated when the event arrives, before any run is created. In scope: event (the payload) and trigger (source and event). A false result skips the event. An expression error fails closed: the trigger does not fire.

This trigger fragment belongs under an existing workflow's triggers map:

triggers:
  on_main_push:
    source: github_acme
    event: push
    filter: event.ref == "refs/heads/main"

See Expressions for the engine and the exact scope.

Was this page helpful?
Edit this page on GitHub

On this page