Triggers & Scheduling
Every workflow has a Start node that decides how the workflow begins. Click the Start node and choose one of three modes:
| Mode | Starts when… |
|---|---|
| Manual | You press Run. Great while building and testing. |
| Webhook | An external service sends an HTTP request to your workflow's URL. |
| Schedule | A timer fires — every few minutes, hourly, daily, weekly, or monthly. |
Switch modes with the Manual / Webhook / Schedule buttons at the top of the Start node's configuration panel.
Integration triggers are a fourth way to start a flow: a "New charge", "New issue", "New row" node from the integrations gallery that fires when something new appears in an external service. Those are covered in the integrations guide.
Manual
The default. The workflow runs when you press Run. Nothing to configure — use this while you're building, then switch to Webhook or Schedule when you're ready to automate.
Webhook
The workflow runs whenever an external service sends it a request. You get a unique URL to give to that service; each request starts a run and can return a response.
Webhooks have their own short guide — see Webhooks for the full create → deploy → test → go-live walkthrough, authentication options, and how to read the incoming payload with {{input.body.*}}.
Schedule — timer-controlled workflows
Run a workflow automatically on a timer. Choose Schedule mode and use the friendly timer builder — no cron knowledge required.
The timer builder
Pick how often it should run from the Run dropdown:
- Every N minutes — e.g. every 15 minutes.
- Every N hours — e.g. every 6 hours.
- Daily — once a day at a time you choose.
- Weekly — on the days of the week you select, at a chosen time.
- Monthly — on a chosen day of the month, at a chosen time.
- Advanced — type a raw cron expression if you want full control.
Then set your timezone (so "9:00 AM daily" means your 9 AM). The builder shows the next few run times as a preview so you can confirm it's what you expect before going live.
Good to know
- Cloud schedules run no more often than every 5 minutes. If you need second-by-second timing, host the workflow on your own EServer, which has no minimum.
- A schedule only starts running once the workflow is deployed — see Deploying.
- Each scheduled run receives a trigger payload noting it was started by the schedule, so downstream nodes can tell a timed run from a manual one.
Example: a daily digest
- Start node → Schedule → Daily at 8:00 AM, your timezone.
- An integration action that fetches yesterday's data (e.g. new sign-ups).
- An Agent node that summarizes it.
- A Send message action (Slack / email) with
{{input.summary}}. - Deploy. From then on it runs itself every morning.
Next steps
- Deploying — activate a webhook or schedule on circuitry.dev or your own server
- Webhooks — the full webhook guide
- Integrations & Plugins — actions and integration triggers