Skip to main content

Choosing and arming a trigger

Goal

Understand how a trigger becomes active and safe. Time: 10 minutes.

One active automatic trigger

A workflow can store settings for every trigger type, but only the selected one starts runs automatically. Manual Run is always available.

triggers:
  enabled: true          # false = all automatic triggers paused
  manual: true
  selected: schedule     # manual | schedule | startup | after | file | http | telegram
  schedule:
    every: 1h
  http: true             # kept for later, but inactive while schedule is selected

The first time you enable an automatic trigger, the page lists every HTTP call, MCP tool, model connection, and secret name that a run can use. Confirm arms the trigger, and Cancel leaves it off. If you later add a new call or secret name, Termorq asks again. A manual Run never asks.

Pausing

Pause triggers stops automatic starts. Run still works. Copies and imports always start with their triggers paused.

TriggerselectedStarts when
ManualmanualYou press Run, use @flow, or run termorq-cli workflow run
SchedulescheduleA preset interval or a 5-field cron expression matches
At startupstartupThe app process opens (once)
After workflowafterAnother workflow finishes with success, failed, or any
FilefileSomething changes inside the workflow folder (debounced by 1.5 seconds)
HTTPhttpPOST /hooks/<id> with a valid x-api-key
TelegramtelegramA message arrives from an allowlisted chat
Check your run

Enable a schedule on a copy of Probe mock. The consent list names its mock:// call and the ACME_CLIENT_SECRET secret. Click Confirm, and the list row shows Schedule.

Exercise

Your workflow has both schedule and http configured. How do you make HTTP the active trigger without losing the schedule settings?

Details

Set selected: http, or choose HTTP request on Triggers. The schedule settings stay saved but inactive.

Reference: Triggers, runs, and notices