Actions
Actions are the steps your automation performs after being triggered. FlowStack provides 1,000+ pre-built actions across both engines, plus the ability to call any HTTP API.
Action Types
App Actions
Pre-built operations for specific apps. Examples:
| Category | Apps | Example Actions |
|---|---|---|
| Gmail, Outlook, SendGrid, Mailchimp | Send email, create draft, add subscriber | |
| Messaging | Slack, Discord, Teams, Telegram | Send message, create channel, update topic |
| Spreadsheets | Google Sheets, Airtable, Excel | Append row, update cell, lookup value |
| CRM | HubSpot, Salesforce, Pipedrive | Create contact, update deal, add note |
| Project Management | Notion, Asana, Jira, Trello, Linear | Create task, update status, add comment |
| Dev Tools | GitHub, GitLab, Bitbucket | Create issue, merge PR, trigger pipeline |
| Payments | Stripe, PayPal, Square | Create invoice, refund payment, list transactions |
| Storage | Google Drive, Dropbox, S3, Box | Upload file, create folder, share link |
| Databases | PostgreSQL, MySQL, MongoDB, Supabase | Query, insert, update, delete |
| AI | OpenAI, Anthropic, Google AI, Groq | Generate text, analyze image, embeddings |
Utility Actions
Built-in operations for flow control and data transformation:
- HTTP Request — Call any REST API with full configuration (method, headers, body, auth)
- Code — Execute JavaScript or Python (Workflow Builder only)
- Branch / IF — Conditional logic (if/else)
- Switch — Multi-way branching
- Loop — Iterate over arrays
- Delay / Wait — Pause execution
- Set Variable — Store values for use in later steps
- Filter — Stop execution if conditions aren't met
FlowStack Actions
Operations on FlowStack's own platform:
- Tables — Insert, update, query, or delete rows in FlowStack Tables
- Execute Flow — Trigger another flow (sub-workflow pattern)
- Send Notification — Send a notification to the FlowStack dashboard
Configuring Actions
Connection
Most app actions require a connection. The first time you use an app:
- Click the Connection dropdown in the action configuration
- Click + New Connection
- Complete the auth flow (OAuth popup or API key form)
- The connection is saved and reusable across all flows
Input Mapping
Map data from the trigger or previous steps into action inputs:
Static values:
Hello, welcome to our platform!
Dynamic values (expressions):
Hello {{trigger.body.name}}, welcome to our platform!
Computed values:
Order total: ${{ steps.calculate.output.total.toFixed(2) }}
Output
Every action produces output data that can be used by subsequent steps. The output structure depends on the action:
// Gmail "Send Email" output
{
"messageId": "18a1b2c3d4e5f6",
"threadId": "18a1b2c3d4e5f6",
"labelIds": ["SENT"]
}
// HTTP Request output
{
"status": 200,
"headers": { "content-type": "application/json" },
"body": { "result": "success" }
}
Error Handling
Configure what happens when an action fails:
- Stop flow (default) — The flow stops and is marked as Failed
- Continue — Skip the failed step and continue with the next action
- Retry — Retry the action up to N times with a delay between attempts
- Fallback — Execute an alternative action if this one fails
See Error Handling for detailed configuration.