Workflow Automation
Build powerful automations that respond to alerts, query your observability data, analyze with AI, and notify your team. No code required.
Quick Start
- Navigate to Workflows in the sidebar
- Click New Workflow
- Add a trigger (Alert, Schedule, or Manual)
- Add data nodes, logic, and actions
- Save and activate your workflow
How Workflows Work
A workflow is a series of connected nodes that execute in order. Each node performs a specific action:
- Trigger Starts the workflow (alert, schedule, or manual)
- Data Queries logs, traces, metrics, sessions, alerts, or services
- AI Analyzes data using Claude AI
- Logic Controls flow with conditions, loops, and transformations
- Action Sends notifications or creates tickets
Triggers
Every workflow starts with exactly one trigger node.
Alert Trigger
Runs when a specific alert fires
Select an alert from your organization. When that alert fires, the workflow executes automatically with the alert data as trigger context.
Config: alert_id - The ID of the alert to monitor
Schedule Trigger
Runs on a cron schedule
Define a cron expression to run the workflow at specific intervals.
Config: cron - Cron expression (e.g., 0 * * * * for hourly)
0 9 * * * (daily at 9am),
*/15 * * * * (every 15 min),
0 0 * * 1 (weekly on Monday)
Manual Trigger
Run on-demand from the UI
Click "Run" in the workflow list to execute manually. Useful for testing or ad-hoc operations.
Data Nodes
Query your organization's observability data.
Observability Data
| Node | Description | Config |
|---|---|---|
| Search Logs | Query log entries | query, time_window, limit |
| Search Traces | Query trace spans | query, time_window, limit |
| Check Metric | Query metric value | metric_name, aggregation, time_window |
Organization Data
| Node | Description | Output |
|---|---|---|
| Search Sessions | Query session replay data | Sessions with user, URL, duration |
| Get Alerts | List alerts by status/severity | Alerts with status, fire_count |
| Alert History | When alerts fired | Historical alert events |
| Get Usage | Ingestion stats | Logs, metrics, traces counts and bytes |
| Get Services | Services with health | Services with error_rate, latency, health |
| Error Summary | Aggregate errors | Errors from logs & traces by service |
AI Nodes
AI Analyze
Analyze data with Claude AI
Send data from previous nodes to AI for analysis. Great for root cause analysis, error classification, and generating summaries.
Config:
prompt- Instructions for the AIinput_variable- Which node's output to analyze (e.g.,node_1)max_tokens- Maximum response length
Example prompts:
- "Analyze these error logs and identify the root cause"
- "Summarize the key issues in these traces"
- "Classify this error and suggest a fix"
Logic Nodes
Control workflow execution with conditions, loops, and transformations.
If/Else Condition
Branch based on field value (2 outputs: true/false)
Switch
Multi-branch routing (up to 4 outputs)
Filter
Filter array items by condition
Aggregate
Count, sum, avg, min, max on arrays
Transform
Extract, count, first, last operations
Loop
Iterate over array items
Delay
Wait before continuing (max 1 hour)
Template
Format text with {{variables}}
Set Variable
Store value for later use
Merge
Combine multiple inputs
Action Nodes
Send notifications and integrate with external tools.
| Node | Description | Key Config |
|---|---|---|
| Slack | Send Slack message | webhook_url, message, channel |
| Microsoft Teams | Send Teams message | webhook_url, title, message |
| Send email via AWS SES | to, subject, body |
|
| PagerDuty | Create/resolve incidents | routing_key, severity, summary |
| Jira | Create Jira issue | project_key, issue_type, summary |
| GitHub | Create GitHub issue | repo, title, body |
| HTTP Request | Call any webhook/API | url, method, body |
Variables & Templates
Reference data from previous nodes using template syntax.
Accessing Node Outputs
Each node's output is stored as node_X where X is the node ID. Use double curly braces to reference:
{{node_1}} - Full output of node 1
{{node_1.count}} - The "count" field from node 1
{{node_1.logs.0}} - First log from node 1's logs array
{{trigger_data}} - Data that triggered the workflow
Template Example
🚨 Alert: High Error Rate
Errors found: {{node_2.count}}
Top error: {{node_2.logs.0.body}}
AI Analysis:
{{node_3.analysis}}
AI Workflow Generation
Describe what you want in natural language and AI will generate the workflow for you.
How to Use
- Open the workflow builder
- Type your description in the AI chat on the left
- AI generates the complete workflow with connected nodes
- Review, modify, and save
Example Prompts
"When high error rate alert fires, search error logs, analyze with AI, and send to Slack"
Creates: trigger_alert → search_logs → ai_analyze → slack
"Every hour, check service health. If any service has error rate above 5%, create a Jira ticket"
Creates: trigger_schedule → get_services → condition → jira
"Daily at 9am, send a usage summary to the team email"
Creates: trigger_schedule → get_usage → template → email
Example Workflows
Intelligent Alert Response
When an alert fires, automatically gather context, analyze, and notify.
Daily Health Report
Every morning, summarize service health and email to the team.
Auto-Create Bug Tickets
When critical errors spike, automatically create Jira issues with context.
API Reference
Manage workflows programmatically via the API.
POST /v1/organizations/{org_id}/workflows
Create a new workflow
GET /v1/organizations/{org_id}/workflows
List all workflows
POST /v1/organizations/{org_id}/workflows/{id}/run
Manually run a workflow
POST /v1/ai/generate-workflow
Generate workflow from natural language