Advanced Workflow Actions and Conditions
Most teams route approvals by category and value and never touch this page. The workflow engine behind approvals can do more, but those capabilities serve a small number of complex setups.
This is a reference for those cases: the other actions a workflow can run, the events that fire them, and the conditions that gate them.
The other workflow actions
Section titled “The other workflow actions”Requesting approval is one action a workflow can run. An event can run several actions in response, and most have nothing to do with approvals. Each action is added from the Add action menu on the Workflows screen and attached to an event.
| Action | What it does |
|---|---|
| Notify | Emails a role on the contract (owner, approver, requester, and others). Recipients resolve dynamically, so the right person is emailed even as ownership changes. |
| Set contract status | Moves the contract to a specific status (for example, Pending Signature once approved). |
| Set properties | Stamps values onto the contract’s properties automatically (for example, recording the creator as the contract owner). |
| Assign | Assigns the contract to a user. |
| Set group | Assigns the contract to a group, which can also change which set of workflow actions applies (a group can use a different workflow view). |
| Set approvers | Pre-sets the approver chain and order before an approval request is sent. |
| Set signers | Sets the default signers and their order for the e-signature step. |
| Request signature | Sends a signature request through your e-signature provider. |
| Run AI Tasks | Runs AI tasks such as property extraction, party extraction, or a playbook review. |
| Begin form sequence | Starts a form sequence for the contract. |
| Add note | Adds a note to the contract’s timeline. |
| Create reminders | Schedules reminders tied to the contract. |
| Send webhook | Posts contract data to an external URL so another system can react. |
| Trigger workflow event | Fires another workflow event with the current contract context, chaining one event into another set of actions. |
| Finalize contract | Runs the lifecycle finalize step. This is distinct from Set contract status: finalizing locks the contract for the next stage, not just changing the status label. |
Manual-trigger buttons on a contract
Section titled “Manual-trigger buttons on a contract”Most actions run automatically when a lifecycle event fires. You can also expose an event as a button on the contract that a user presses on demand. The button’s label, icon, placement, available statuses, and confirmation message are all part of the event’s configuration.
Use this when a step should happen only when a human decides: a “Send for finance review” button, a “Re-run extraction” button, or a “Notify legal” button a contract owner clicks when they judge it is time.
Custom events
Section titled “Custom events”Beyond the built-in lifecycle events (form submitted, contract finalized, approval accepted, signature completed, and so on), an administrator can create a custom event for your company. Custom events appear under the Custom group in the events list and are wired up the same way as built-in events: attach actions, attach conditions.
Custom events are typically paired with the Trigger workflow event action or a manual-trigger button, so you can define a named moment in your own process (“contract escalated,” “review requested”) and hang automation off it.
Condition (rule) types
Section titled “Condition (rule) types”Every action can be gated by conditions so it only runs for the contracts it should. Conditions are grouped into rule sets with all (AND) or any (OR) logic. The full set of things a condition can test is below.
| Condition tests… | Use it to… |
|---|---|
| Category | Branch by category (NDA vs MSA vs procurement). |
| Contract property | Compare a property value (value over a threshold, a risk flag set, a specific list option chosen). |
| Form | Match the form a contract came from. |
| Form sequence | Match a specific form sequence. |
| Contract source | Branch by whether the contract is a Playbook, Template, or External contract. |
| Contract status | Match the contract’s current status. |
| Contract owner | Match (or exclude) specific owners. |
| Is contract assigned | Test whether the contract has an owner yet. |
| AI task type | Branch by which AI task ran (for example, property extraction). |
| Has counterparty | Test whether the contract has any parties. |
| Party attribute | Match a party’s custom attribute. |
Property comparisons use the operators that fit the property type: equals and not-equals for text; greater-than, less-than, and their inclusive variants for numbers; includes and does-not-include for multi-option fields; and true/false/empty tests for yes-no fields. See Routing Approvals by Category, Value, and Properties for worked examples.
How these terms map
Section titled “How these terms map”Related
Section titled “Related”Chat with us
We typically reply within a few minutes