Workflows
Workflows are your app's automation: when something happens, run up to ten steps — write data, send email, call a webhook, generate a PDF, notify people. They run server-side against the published app.
Triggers
| Setting | Options | What it does |
|---|---|---|
| Row event | create / update / delete | Fires when rows of a table change, with an optional condition expression so only matching rows trigger. |
| Schedule | every 15 min / hourly / daily / weekly | Runs on the clock in your chosen timezone. “For each row” mode runs once per row matching a filter — daily reminders for every overdue task. |
| Manual | — | Fires from a Run workflow action — automation on demand for the clicked row. |
Steps
| Setting | Options | What it does |
|---|---|---|
| Update row | up to 10 fields | Write computed values to the triggering record — or to every record a Find records step matched. |
| Create row | up to 10 fields | Insert a computed row into any table. |
| Send email | — | Templated subject and body with record values — plain text or a branded email template with variables; optional reply-to; attach up to 3 files generated earlier in the run. |
| Call webhook | GET / POST / PUT | Reach any external system, with custom headers (secret values supported) and a templated body. |
| Send notification | — | In-app inbox + web push to an audience expression — see Notifications. |
| Generate PDF | — | Fill a PDF template with record values; save the file URL to a field or attach it to an email. |
| Generate CSV | — | Render a CSV template (typed columns, delimiter, header row) over a filtered list of rows — e.g. one customer's orders; save the file URL to a field or attach it to an email. |
| Find records | filter / sort / limit | Look up rows anywhere in the app — later steps use STEP("name", "count"), STEP("name", "rows") and STEPFIRST("name", "Field") in their formulas; optionally stop the run when nothing matched. |
| Ask Ember | — | One AI call over a formula-built prompt; the answer becomes STEP("name", "text") and can be saved to a text field. Counts against the workspace's monthly Ember allowance. |
| Add comment | — | Post a templated comment on the triggering record, authored as “Automation”. |
| Run workflow | — | Run a manual workflow on the same record, inline — reusable sub-automations. Chains stop after 3 levels. |
| Delete record | — | Delete the triggering record (later steps can't use it anymore) — or every record a Find records step matched. |
| If / else branch | — | One condition splits the run into a “Then” and an “Otherwise” arm of steps — nest up to three levels for multi-way logic. The run history shows which arm ran. |
Every step takes an optional Run if condition, so one workflow can branch — email the customer only when [Notify] = TRUE.
Chaining is opt-in
By default, rows written by a workflow do notfire other workflows — no accidental loops. Each workflow has a "triggers other workflows" toggle to opt into chaining, and even then depth and volume guards bound the cascade.
Workflows fire from the published app; a settings toggle can extend row-event triggers to draft-mode edits while you test.