Cheqq Docs
Core ConceptsWorkflows

Triggers

Configuration depth for each of the six trigger types, including webhook security and record-change conditions.

A workflow can have several triggers at once, all feeding into the same first step. Each can be renamed, reordered, and paused independently — a workflow always needs at least one, so deleting the last one is blocked. Add trigger sits beside the last trigger on the canvas.

A trigger's switch is the only thing that turns it on or off. Editing a paused trigger — moving a schedule to a new time, say — leaves it paused. Changing a trigger's type asks first when the change would lose its schedule, webhook, email address, collection, or inputs.

Manual

Runs only when you select Run now. Optionally define input parameters (key, label, type, required) — if any are set, Run now opens a form to fill them in first.

Schedule

Pick a frequency — once, daily, weekdays, weekly, monthly, or a custom cron expression — along with a time and timezone. Cheqq previews the next few run times before you save, and flags cron expressions that are invalid or fire more often than once a minute.

Webhook

Cheqq generates a unique URL that fires the workflow whenever it receives a request.

The request's JSON arrives under trigger.body, so a field called email is {{trigger.body.email}} in later steps. Once the trigger has a payload schema or has received a request, the data picker lists those fields for you.

The workflow agent can create the endpoint for you while it builds — see Ask the agent to build it. An endpoint made that way counts against your plan's allowance like any other.

Securing your webhook

  • Signature verification — optionally require requests to include an HMAC-SHA256 signature (in a header you choose) computed over the payload with a secret Cheqq generates; requests with a missing or invalid signature are rejected.
  • Payload schema — optionally require the incoming JSON to match a schema you define; a mismatch is rejected before the workflow runs.
  • Requests must be JSON and under 1 MB.
  • Sensitive headers (authorization, cookies, and similar) are never stored — they're stripped before the request is recorded.

Email

Fires when mail arrives at one of your Mailhook addresses. Configure:

  • Sender/subject filters — restrict to messages where the sender or subject contains text you specify.
  • Observe follow-ups — when enabled, the trigger keeps firing on replies within the same email thread as a previously matched message, not just the original.

Record change

Fires when a record in a chosen collection is created, updated, or deleted. Optionally add field-level conditions (equals, not equals, greater than, less than, contains) to narrow which changes fire the trigger.

Update conditions check for an actual change

On an update event, a condition on a field only fires if that field's value actually changed — not merely if the field is present with a matching value on an unrelated update.

Browser

Fires from the Companion extension side panel against the page you're currently viewing. Configure:

  • URL patterns — restrict which sites the trigger is available on.
  • Capture — what's pulled from the page: content (readable text extraction), the current text selection, and/or a screenshot.
  • Display — whether the workflow's result is shown back in the side panel, and in what format (markdown, text, or JSON).
  • Agent browser access — an opt-in that lets an AI step in this run take live control of the browser, beyond just reading what was captured.

Continue with Step types for what a trigger connects into.

Was this page helpful?