Workflow
Workflow is FormTab's automation engine for Submissions. A Workflow runs one or more Actions whenever a chosen event happens on a Form — a Submission is sent, its status changes, or a file finishes uploading. Each Action can be limited to specific Submissions using Criteria, and can be tested against a real Submission before you switch it on.
TIP
Workflow replaced FormTab's older "Triggers" system. If you're looking for the old JSON-based Trigger editor, that's been retired — see Migrating from Triggers below.
Creating a Workflow Action
- Go to Forms → Triggers (the sidebar label is still being updated to "Workflow" — this is the same page).
- Select the Team you want to configure from the team selector.
- Choose Add Action.
- On the Configure tab:
- Give the Action a Name.
- Choose Fires When — the event that runs this Action (see Events below).
- Choose an Action type (see Action Types below). The parameter fields shown below the dropdown change depending on the Action type you pick.
- Fill in the Action's parameters. Text fields that support it show clickable token chips (e.g. Form Field) so you can insert dynamic values from the Submission — see Tokens.
- Optionally add Criteria to restrict when the Action runs — see Criteria.
- Set Status to Active or Inactive.
- Choose Save Action.
- Once saved, use the Preview tab to pick a real Submission and choose Run Preview. This shows whether the Submission would pass your Criteria, and previews the Action's result, without actually sending/posting anything live.
Events
Every Workflow fires on one of the following events:
| Event | Fires when |
|---|---|
| Form submitted | A Submission is sent to the Team |
| Status changed | A Submission's custom status changes |
| Upload complete | All attachments/photos for a Submission have finished uploading (use this instead of Form Submitted if your Action needs to read attached files or images) |
Criteria
Criteria let you restrict an Action to only run for Submissions that match specific conditions, instead of running on every event. If you don't add any conditions, the Action runs on every event.
Choose whether all conditions must match (AND) or any condition can match (OR), then add one or more condition rows, each made up of a field, an operator, and (for most operators) a value.
Fields
The Criteria builder lets you pick from a set of special submission fields, or enter any Form field's label directly:
| Field | Description |
|---|---|
| Form name | The name/title of the Form |
| Reference | The Submission's reference |
| Author | The Submission's author/submitter |
| Status | The Submission's current status |
| User ref | The user_ref value from the Submission's metadata |
| Field value… | Any Form field, matched by its label |
Operators
The Criteria builder currently exposes:
equals, not equals, contains, not contains, starts with, ends with, is empty, is not empty
is empty and is not empty don't require a value.
TIP
The underlying engine also supports greater_than, less_than, in, and not_in for numeric comparisons and matching against a list of values — these aren't in the visual builder yet, but are available if you're configuring criteria via the API.
Example
{
"operator": "AND",
"conditions": [
{ "field": "_status", "operator": "equals", "value": "Approved" },
{ "field": "Company", "operator": "contains", "value": "Ltd" }
]
}
Tokens
Many Action parameters (email subject, description, tags, webhook URLs, etc.) support tokens — placeholders wrapped in curly braces that are replaced with a real value when the Action runs. Click the token chips shown above a supported field to insert one, or type them directly:
{Field Label}— inserts the value of a Form field, matched by its label{_form_name},{_reference},{_author}and other_-prefixed metadata tokens — inserts Submission metadata
Action Types
| Action | What it does |
|---|---|
| Send Email | Emails a copy of the Submission to one or more addresses |
| Webhook | POSTs Submission data to an external URL — see the Webhooks Reference |
| Update Description | Sets the Submission's description from a template |
| Update Tags | Adds one or more Tags to the Submission (additive — existing Tags are kept) |
| Set Status | Sets the Submission to a specific custom status |
| Return to Sender | Sends the Submission back to the original submitter, with an optional message |
| Assign to User | Assigns the Submission to a Team member for review, with an optional message |
| Create New Submission | Creates a new Submission on another Form, optionally copying field values across |
| Slack Notification | Posts a message to a Slack channel via an Incoming Webhook |
| Save to Dropbox | Uploads a rendered PDF of the Submission to Dropbox |
| Save to Google Drive | Uploads a rendered PDF of the Submission to Google Drive |
| Save to OneDrive / Add Row to Excel | Uploads a rendered PDF to OneDrive, or appends a row to an Excel workbook |
| Save to SharePoint / Add Row to Excel | Uploads a rendered PDF to SharePoint, or appends a row to an Excel worksheet |
| Create Xero Contact | Creates or updates a Contact in Xero from Submission data |
Send Email
Sends a copy of the Submission by email.
| Parameter | Description |
|---|---|
| Recipient Email(s) | One or more addresses, comma-separated. Supports Field and Group tokens |
| Subject | Optional, supports tokens, e.g. New submission — {_form_name} |
| Attachment Format | none or pdf |
| Review Mode | Includes a link to the authenticated Team submission viewer. Recipients must be Team members with Reporter or Admin rights |
| CC Author | Sends a copy to the Submission's author as well |
Webhook
POSTs the Submission's data as JSON to a URL you specify.
| Parameter | Description |
|---|---|
| Webhook URL | Required |
| Payload Version | 1 (flat key/value) or 2 (grouped, includes callback/verification data) |
| Custom Headers | Optional key/value pairs sent with the request |
| Max Retry Attempts | Up to 5 |
| Include Callback URLs | Attaches callback URLs to the payload (Version 2 only) |
See the Webhooks Reference for the full payload format.
Create New Submission
Copies field values from the current Submission into a new Submission on a different Form — useful for a "Part A → Part B" workflow, where completing one form kicks off a second, fuller form.
| Parameter | Description |
|---|---|
| Target Form | The Team and Form the new Submission should be created on |
| Assign To | Who the new Submission is assigned to. Supports tokens |
| Copy Values | All Matching Fields (copies by matching field label) or None |
| Submission Description | Optional, supports tokens |
Integration Actions
Dropbox, Google Drive, OneDrive, SharePoint, and Xero Actions require you to connect the integration first, under Settings → Integrations. Once connected, the corresponding Action(s) become available in the Action type dropdown.
- Save to Dropbox / Google Drive / OneDrive / SharePoint — renders the Submission as a PDF and uploads it to a folder you specify (supports tokens for folder path and file name).
- Add Row to Excel (OneDrive/SharePoint) — appends a row of Submission data to an existing Excel worksheet, matched to existing rows by a configurable column.
- Create Xero Contact — creates or updates a Xero Contact, using the Contact Name as the upsert key (an existing Contact with the same name is updated rather than duplicated).
Migrating from Triggers
The old Trigger types map onto Workflow Actions as follows. If you have existing Triggers, an administrator can migrate them to Workflow from the Triggers page.
| Old Trigger type | New Workflow Action |
|---|---|
| Email / Email to Field / Email to Group | Send Email |
| Webhook | Webhook |
| Description | Update Description |
| Tag | Update Tags |
| Document Trigger | Create New Submission |
| Dropbox | Save to Dropbox |
| Xero | Create Xero Contact |
| MailChimp Subscribe | No longer available |
| Sharefile | No longer available |
| Validate | No longer available as a separate type — use Criteria on any Action instead |
Workflow also adds Actions that didn't exist before: Set Status, Return to Sender, Assign to User, Slack Notification, Google Drive, OneDrive, and SharePoint (including Excel row actions).
The old matchon/matchval and conditions fields are replaced by the Criteria builder described above.
