Workflow Builder
Create automated workflows visually with a drag-and-drop canvas, AI generation, and 15+ integrations.
The Workflow Builder is a visual, no-code automation platform that lets you create, test, and deploy automated workflows connecting AI, external services, and custom logic.
What is a Workflow?
A workflow is an automated sequence of steps that runs when triggered. Each step is a node on a visual canvas, connected by edges that define the execution flow.
Creating a Workflow
Navigate to Workflows
Click Workflows in the left sidebar, then click New Workflow.
Choose a Starting Point
You can either:
- Start blank — Build from scratch on the visual canvas
- Use AI — Describe your workflow in plain English and let AI generate it
AI Example:
Search for the latest AI news, summarize the results,
and send a Slack message to #technology with the summary.Add a Trigger
Every workflow starts with a trigger — the event that kicks off execution:
| Trigger | Description |
|---|---|
| Manual | Run by clicking the "Run" button |
| Webhook | HTTP POST request to a generated URL |
| Schedule | Cron-based (e.g., daily at 9 AM, every hour) |
| Event | Triggered by a system event |
Add Action Nodes
Drag nodes from the palette onto the canvas and connect them. See Available Nodes below for the full list.
Configure Each Node
Click a node to open its configuration panel. Each node type has specific settings — for example, the Generate Text node lets you set the prompt, model, and AI strategy.
Test Your Workflow
Click Run to execute the workflow manually. The execution panel shows real-time progress with per-node logs, inputs, outputs, and timing.
Publish
When ready, click Publish to activate your workflow. Publishing:
- Creates a versioned snapshot
- Generates a webhook URL (if webhook trigger is used)
- Enables scheduled execution (if schedule trigger is used)
Available Nodes
AI Nodes
| Node | Description |
|---|---|
| Generate Text | AI text generation with multiple strategies (Chain of Thought, Tree of Thoughts, Reflexion) |
| Generate Image | Image generation with model selection (Imagen 4, FLUX, and more) |
| Perplexity Search | AI-powered web search with real-time data |
| fal.ai Image | Advanced image generation (FLUX, Recraft models) |
| fal.ai Video | Video generation (Kling, MiniMax) |
Web and Data
| Node | Description |
|---|---|
| HTTP Request | Custom API calls (GET, POST, PUT, PATCH, DELETE) |
| Firecrawl Scrape | Extract content from any URL (markdown, HTML, or text) |
| Firecrawl Search | Web search with configurable result limits |
Logic and Control
| Node | Description |
|---|---|
| Condition | Branch execution based on true/false evaluation |
Communication
| Node | Description |
|---|---|
| Send Email | Send emails via Resend |
| Send Slack Message | Post messages to Slack channels |
Integrations
| Node | Description |
|---|---|
| Linear | Create tickets, find and update issues |
| GitHub | Create issues, search repositories, get file contents |
| MCP Tool | Execute any tool from configured MCP servers |
AI-Powered Generation
You can create or modify workflows using natural language:
- Click the AI prompt input in the editor
- Describe what you want in plain English
- Choose the mode:
- Create — Generate a new workflow from scratch
- Modify — Update the existing workflow
- Append — Add new steps to the end
- Review the generated nodes and connections
- Customize as needed
The AI respects your configured AI provider and model preferences.
Integrations
Configure credentials for external services under Workflows → Integrations.
| Integration | Auth Type | Description |
|---|---|---|
| Slack | Bot OAuth Token | Send messages to channels (chat:write scope required) |
| Linear | API Token | Issue and project management |
| GitHub | Personal Access Token | Repository operations |
| Resend | API Key | Transactional email |
| Firecrawl | API Key | Web scraping and search |
| Perplexity | API Key | AI-powered search |
| fal.ai | API Key | Image and video generation |
| Google Drive | OAuth | Document access |
| Notion | API Key | Database and page access |
| Confluence | API Token | Documentation access |
| Microsoft Teams | OAuth | Chat integration |
| MCP | Varies | Model Context Protocol servers |
Managing Credentials
- All credentials are encrypted before storage
- Credentials are scoped to your account or organization
- Use Test Connection to verify credentials before saving
- Credentials are masked in the UI for security
Publishing and Versioning
Publishing a Workflow
When you publish a workflow:
- The current state is saved as a numbered version
- You can add a changelog describing the changes
- A webhook URL is generated (if webhook trigger is enabled)
- The workflow becomes active for scheduled triggers
Version History
- Every publish creates a new version
- View all versions in the Version History panel
- Rollback to any previous version instantly
- Compare published vs. current draft changes
Webhook Triggers
Published workflows with webhook triggers get a unique URL:
POST /api/workflows/trigger/{workflowId}Include the webhook secret in the request header for authentication. Pass input data as JSON in the request body.
Execution and Monitoring
Running Workflows
Workflows can be triggered:
- Manually — Click "Run" in the editor
- Via Webhook — Send an HTTP POST request
- On Schedule — Automatically at configured times
- By Event — Triggered by system events
Execution Panel
The execution panel shows real-time progress:
- Per-node logs with input data, output data, and timing
- Status indicators — Pending, Running, Completed, Failed
- Error messages for debugging failed nodes
- Duration tracking for performance analysis
Execution History
View past executions in the Run History tab:
- Filter by status (Completed, Failed, Cancelled, Timed Out)
- Inspect individual node results
- Copy execution data for debugging
- View trigger input data
Human-in-the-Loop Approvals
Workflows can pause for manual approval before proceeding:
- Add an approval step to your workflow
- When execution reaches this step, it pauses
- Approvers receive a notification
- Review the context and Approve or Reject
- Optionally add feedback or comments
- Workflow continues or stops based on the decision
Workflow Statuses
| Status | Description |
|---|---|
| Draft | Editable, not runnable via webhook or schedule |
| Published | Runnable, version locked |
| Active | Published and currently running |
| Paused | Published but temporarily disabled |
| Archived | Hidden from the list, preserved for reference |
Best Practices
Design
- Start simple — Begin with 2-3 nodes, test, then expand
- Use conditions — Add branching for error handling
- Name nodes clearly — Descriptive names help with debugging
Testing
- Test manually first — Always run manually before publishing
- Check node outputs — Verify each node produces expected results
- Use test data — Don't use production credentials during testing
Production
- Monitor executions — Check the run history regularly
- Set up error handling — Use conditions to handle failures gracefully
- Version your changes — Publish with meaningful changelogs
- Rotate credentials — Update integration credentials periodically