Triggers
How to start FlowTrux workflows using manual runs, webhooks, or cron schedules.
Every workflow begins with a Trigger node that defines how execution is initiated. There are three trigger types: Manual, Webhook, and Cron.
Manual
Click the Run button in the workflow editor to start execution immediately. You can optionally provide static JSON data in the Trigger node configuration that will be passed as {{trigger.data}}.
This is the simplest way to test and run workflows during development.
Example static data:
{
"text": "Summarize this quarterly report...",
"language": "en",
"format": "bullet_points"
}
Webhook
Expose the workflow as an HTTP endpoint that external services can call to trigger execution. See Webhooks API Reference for authentication, response modes, and examples.
Endpoint
POST /api/webhooks/[workflowId]
Authentication
All webhook requests require HMAC-SHA256 signature verification. The signature must be included in the X-Webhook-Signature header.
The signature is computed over the raw request body using the workflow's webhook secret:
HMAC-SHA256(secret, requestBody)
Requests without a valid signature are rejected.
Request Data
- The POST request body becomes
{{trigger.data}} - URL query parameters are available at
{{trigger.data._query}}
Example:
A POST to /api/webhooks/abc123?source=github&ref=main with body {"action": "push"} produces:
{
"action": "push",
"_query": {
"source": "github",
"ref": "main"
}
}
Response Modes
Configure how the webhook responds to the caller in the Trigger node settings.
| Mode | Behavior | Use Case |
|---|---|---|
minimal | Returns { success: true, executionId: "..." } immediately. Workflow runs in the background. | Fire-and-forget integrations, fast response required |
lastNode | Waits for execution to complete, returns output of the last node that executed. | Simple workflows where the final result is needed |
specificNode | Waits for execution to complete, returns output of a node specified by ID. | When you need output from a particular processing step |
allNodes | Waits for execution to complete, returns { nodeId: { name, output } } for all nodes. | Debugging or when the caller needs comprehensive results |
For lastNode, specificNode, and allNodes modes, the webhook connection remains open until execution finishes.
Custom Response
You can configure a custom HTTP status code and custom headers on the response:
| Field | Description |
|---|---|
| Status Code | HTTP status code returned to the caller (e.g., 200, 201, 202) |
| Headers | Additional HTTP headers included in the response |
Cron
Run the workflow on a recurring schedule. Cron-triggered workflows execute automatically at the specified times.
Cron Expression Format
Standard five-field cron syntax:
┌───────────── minute (0-59)
│ ┌───────────── hour (0-23)
│ │ ┌───────────── day of month (1-31)
│ │ │ ┌───────────── month (1-12)
│ │ │ │ ┌───────────── day of week (0-7, 0 and 7 = Sunday)
│ │ │ │ │
* * * * *
Common Cron Expressions
| Expression | Schedule |
|---|---|
* * * * * | Every minute |
*/5 * * * * | Every 5 minutes |
*/15 * * * * | Every 15 minutes |
0 * * * * | Every hour (at minute 0) |
0 */2 * * * | Every 2 hours |
0 9 * * * | Daily at 9:00 AM |
0 9 * * 1-5 | Weekdays at 9:00 AM |
0 0 * * * | Daily at midnight |
0 9,17 * * 1-5 | Weekdays at 9:00 AM and 5:00 PM |
0 0 * * 0 | Every Sunday at midnight |
0 0 1 * * | First day of every month at midnight |
0 6 * * 1 | Every Monday at 6:00 AM |
30 8 * * 1-5 | Weekdays at 8:30 AM |
How It Works
Cron-scheduled workflows are managed automatically by the platform. Once configured and saved, workflows will execute at the specified times without any additional setup.
Form Trigger
Public forms allow non-technical users to submit data that triggers a workflow.
Setup
- Create form: Settings → Forms → Create Form
- Add fields: text, email, number, textarea, select, file upload, checkbox
- Configure layout: Stack (vertical) or Grid (2-column)
- Customize appearance: logo, colors, background image
- Publish: click Publish to generate a public URL
- Assign to workspace: Settings → Workspaces → Edit → enable the form
- Link to workflow: Trigger type → Form → select the form
Public Form URL
Forms are accessible at /f/[token] without authentication. Share this URL with users or embed on your website.
Embed Mode
Add ?embed=1 to the form URL for iframe embedding:
<iframe src="https://app.flowtrux.com/f/YOUR_TOKEN?embed=1" width="100%" height="600"></iframe>
Embed mode strips background, logo, and padding - renders only the form fields.
Form Data in Workflows
Form fields are available as:
{{trigger.data.fields.name}}
{{trigger.data.fields.email}}
{{trigger.data.formName}}
{{trigger.data.submittedAt}}
File uploads include name, size, contentType, and key (S3 path).