Triggers
A trigger is what causes a workflow to start a new run. Every workflow has exactly one trigger. Choosing the right trigger is the first step in building any automation.
Trigger types
Section titled “Trigger types”Kanri supports six trigger types:
| Trigger | When it fires |
|---|---|
| Manual | Only when someone clicks Run |
| Action Event Occurs | When a specific event happens in Kanri |
| Condition Becomes True | When a filter changes from false to true for a record |
| Condition Stops Being True | When a filter changes from true to false for a record |
| Scheduled Time Field Due | A set number of days before or after a date field |
| Recurring Schedule | On a cron schedule (daily, weekly, monthly, etc.) |
Manual
Section titled “Manual”When to use it: You want to run the workflow on demand, for a specific record, without it firing automatically.
Manual workflows don’t have an automatic trigger — they only run when someone explicitly starts them. They appear in the action menu on matching records (member rows, invoice rows, etc.) so staff can trigger them from the record itself. They can also be started from the Workflows admin page.
Example uses:
- A “send renewal offer” workflow that staff trigger manually when speaking with a member.
- An onboarding checklist workflow that an admin starts after a new member’s first session.
Action Event Occurs
Section titled “Action Event Occurs”When to use it: You want the workflow to fire every time a specific thing happens in Kanri — a member is created, an invoice is paid, a membership is promoted, etc.
Select the event type you want to watch. Kanri starts a run when that event is logged for your school. Choose a record type compatible with the event: the run uses the event’s affected record, not an automatic conversion to a related member. For example, an invoice event does not automatically make its customer the run’s Member record.
Example uses:
- When a member is created → send a welcome message.
- When a membership is promoted → log a note to their profile.
- When an invoice is paid → send a receipt email.
What counts as an event? Many operations log events, but not every change emits every selectable event. You pick which logged event fires the trigger. See Event Types Reference for the complete selectable list, and test that the intended operation actually emits it.
Condition Becomes True
Section titled “Condition Becomes True”When to use it: You want the workflow to fire the moment a record first meets a condition — when it transitions from not matching to matching.
You define the condition using Kanri’s filter builder — the same filters used in reports and groups. The workflow fires once, at the moment the condition becomes true for a record. It won’t fire again for the same record unless the condition goes false and then becomes true again later.
Example uses:
- When a member’s subscription status becomes “Expired” → send a re-engagement message.
- When an invoice has been overdue for more than 30 days → trigger a late notice sequence.
- When a membership’s sessions remaining reaches 0 → alert the member to renew.
How transitions are detected: Kanri detects condition transitions in two ways:
- After supported saved operations — Kanri compares records before and after service-backed changes to detect a filter changing from false to true. This is not a guarantee that every possible background update, import, or direct database change is observed.
- Daily sweep — for conditions involving date comparisons (like “days since last visit > 30”), Kanri runs a daily sweep to catch transitions caused by time passing rather than a record change.
Condition Stops Being True
Section titled “Condition Stops Being True”When to use it: The mirror of “Condition Becomes True” — fires when a record transitions from matching to not matching a filter.
Example uses:
- When a member’s subscription is no longer active → pause access-related workflows.
- When an overdue invoice is paid (so “is overdue” becomes false) → cancel a pending reminder.
The same two detection mechanisms apply (write-triggered and daily sweep).
Scheduled Time Field Due
Section titled “Scheduled Time Field Due”When to use it: You want to fire a workflow a set number of days before or after a specific date field on the record.
Pick a date field (like “birthday”, “contract end date”, or “last visit”) and set an offset in days:
- Positive number = after the date (e.g., +2 = “2 days after the contract ends”)
- Negative number = before the date (e.g., -3 = “3 days before the birthday”)
Kanri compares the stored date with the day being checked in the school’s timezone. It starts runs for records newly due since the previous daily check. This is not a precise time-of-day alarm; processing depends on the background date check.
Example uses:
- 7 days before a subscription’s end date → send a renewal reminder.
- 1 day after a membership’s last promotion → send a congratulations message.
Recurring Schedule
Section titled “Recurring Schedule”When to use it: You want the workflow to fire on a schedule, regardless of what’s happening with individual records.
Set a cron schedule (e.g., every day at 9am, every Monday, the first of every month) using plain-language presets or a custom cron expression. The schedule fires in your school’s local timezone.
You can optionally add a filter to fan out the workflow to multiple records at once. With a filter, instead of one global run, Kanri starts one run per matching record.
No filter: Kanri creates one run with no bound record. Actions that need Workflow record, record-field references, Branch, and Switch need a record and cannot use that empty target. Use a For Each step to select records, or add a trigger filter.
Example uses (with filter — one run per matched record):
- Every Sunday at 6pm, for all active members → send a “see you this week” message.
- First of every month, for members with an expiring subscription → send a billing heads-up.
Presets available in the builder:
- Every day (at a chosen time)
- Every week (on chosen days, at a chosen time)
- First of the month (at a chosen time)
- Custom cron expression
Schedules are checked in the background, so a due run may start after the displayed time. Test the selected record filter and message recipients; a recurring schedule does not itself generate a report or choose a staff email address.
Next steps
Section titled “Next steps”- Steps — learn what a workflow can do once it starts
- Event Types Reference — full list of event types for the Action Event Occurs trigger
- Create Your First Workflow — hands-on tutorial