Example requests
- “Run the weekly-report workflow every Monday at 8am Eastern.”
- “Start the triage workflow whenever someone posts a top-level message in #support.”
- “Kick off the onboarding workflow when a Stripe checkout session completes.”
- “Give our backend a URL it can call to start the refund review workflow.”
- “When the dashboard loads, have the inbox agent summarize today’s unread email.”
Ways to start a run
A workflow can have any number of triggers, of any mix of types. Each trigger has an
id, a type, and an optional label:
Triggers only fire when published
Saving a workflow never turns its triggers on. Publish is what makes them live: schedules start firing, connector event subscriptions are set up, and webhook URLs start accepting calls. A trigger in a saved but unpublished version is inert. This also means you can add a trigger and keep testing with Run now, which runs the latest saved version, before anything fires on its own.To pause a live workflow, remove its trigger (or comment it out in the JSONC), save, and publish.
What a triggered run uses
Triggered runs always run the published version and always call deployed apps. They run as the person who last published the workflow, so agents and app calls use that person’s access. Each run appears in the workflow’s run history, labeled with the trigger that started it.Next steps
Schedules
Run a workflow on a cron schedule.
Connector events
Start a workflow from Slack, Stripe, GitHub, and more.
Webhooks
Start a workflow with an authenticated HTTP call.
App triggers
Start agent runs from your deployed apps.