Workflow
Workflow is a powerful feature that automates the inquiry process from start to finish by building customized scenarios by customer and by situation, just like Legos. Through customized scenarios and AI, you can both improve the customer experience and increase the efficiency of your inquiry response.
Overview
Workflows in Ulka Chat automate business processes through a visual, no-code workflow builder. Each workflow consists of triggers (events that start the workflow), conditions (rules that determine the path), and actions (tasks that are executed). The workflow engine processes events in real-time, executing actions according to the defined logic.
Getting Started
Accessing Workflows
Navigate to workflows from the main menu.
- Click Workflow in the main menu
- View your workflows dashboard
- See all active, inactive, and draft workflows
Understanding Workflow Structure
Each workflow consists of three main components:
Triggers:
- Events that start the workflow
- Examples: New conversation, message received, tag added, etc.
Conditions:
- Rules that determine workflow path
- Examples: Message contains keyword, contact has tag, agent is available, etc.
Actions:
- Tasks executed when conditions are met
- Examples: Assign conversation, send message, add tag, create task, etc.
Creating Workflows
Creating a New Workflow
Create a new workflow to automate a process.
- Go to Workflow > Workflows
- Click Create Workflow
- Enter workflow name and description
- Choose workflow type (optional):
- Conversation Workflow: Automate conversation-related tasks
- Contact Workflow: Automate contact-related tasks
- Marketing Workflow: Automate marketing campaigns
- Click Create to open the workflow builder
Workflow Builder
The visual workflow builder lets you create workflows using drag-and-drop.
Workflow Canvas:
- Visual representation of workflow
- Drag and drop triggers, conditions, and actions
- Connect components with arrows
- Test workflow before deploying
Components Palette:
- Triggers: Available trigger types
- Conditions: Available condition types
- Actions: Available action types
- Logic: Logical operators (AND, OR, NOT)
Adding Triggers
Add triggers to start your workflow.
- In the workflow builder, click Add Trigger
- Select trigger type:
- New Conversation: When a new conversation starts
- Message Received: When a message is received
- Conversation Assigned: When a conversation is assigned
- Tag Added: When a tag is added to conversation / contact
- Tag Removed: When a tag is removed
- Contact Created: When a new contact is created
- Contact Updated: When contact information is updated
- Property Changed: When a contact property changes
- Time-Based: Schedule-based trigger (daily, weekly, etc.)
- Configure trigger settings:
- Channel: Specific channel or all channels
- Time Range: Time of day (optional)
- Additional Criteria: Additional trigger conditions
- Click Save
Adding Conditions
Add conditions to determine workflow path.
- In the workflow builder, click Add Condition
- Select condition type:
- Message Contains: Message contains keywords
- Message Matches Pattern: Message matches regex pattern
- Contact Has Tag: Contact has specific tag
- Contact Has Property: Contact property matches value
- Contact Language: Contact's preferred language
- Agent Available: Specific agent is available
- Conversation Status: Conversation status matches
- Business Hours: Current time is within business hours
- Customer Type: Contact type (VIP, Regular, etc.)
- Configure condition:
- Operator: Equals, Contains, Greater Than, Less Than, etc.
- Value: Value to compare against
- Case Sensitive: Whether comparison is case-sensitive (if applicable)
- Click Save
Multiple Conditions:
- Use AND/OR logic to combine conditions
- Create complex conditions with nested logic
- Test conditions to ensure they work correctly
Adding Actions
Add actions to perform tasks.
- In the workflow builder, click Add Action
- Select action type:
- Assign Conversation: Assign to agent or department
- Send Message: Send automated message
- Add Tag: Add tag to conversation/contact
- Remove Tag: Remove tag from conversation/contact
- Set Property: Set contact property value
- Create Task: Create task for agent
- Send Email: Send email notification
- Notify Agent: Send notification to agent
- Escalate: Escalate to manager
- Close Conversation: Mark conversation as resolved
- Trigger Webhook: Call external API/webhook
- Wait: Pause workflow for specified time
- Transfer: Transfer to another workflow
- Configure action:
- Parameters: Action-specific parameters
- Recipient: Who receives the action (agent, contact, etc.)
- Message Content: Message to send (if applicable)
- Delay: Delay before executing action (optional)
- Click Save
Multiple Actions:
- Add multiple actions to execute sequentially
- Actions execute in order from top to bottom
- Use "Wait" action to add delays between actions
Connecting Components
Connect triggers, conditions, and actions with arrows.
- Click on a component (trigger, condition, or action)
- Drag from the output port to another component's input port
- Components are connected
- Workflow flows from triggers → conditions → actions
Workflow Path:
- Linear Flow: Simple sequential flow
- Branching: Multiple paths based on conditions
- Parallel Actions: Multiple actions executed simultaneously
- Loops: Repeat actions (limited to prevent infinite loops)
Testing Workflows
Test workflows before deploying to production.
- In the workflow builder, click Test Workflow
- Configure test scenario:
- Trigger: Simulate trigger event
- Contact: Select or create test contact
- Conversation: Select or create test conversation
- Additional Data: Provide additional test data
- Click Run Test
- View test results:
- Which conditions were met
- Which actions were executed
- Any errors or warnings
- Fix issues if any
- Re-test until workflow works correctly
Test Best Practices:
- Test with various scenarios
- Test edge cases
- Test with different contact types
- Verify all paths are tested
Activating Workflows
Activate workflows after testing.
- In the workflow builder, click Save to save as draft
- Review workflow configuration
- Click Activate to enable workflow
- Confirm activation
- Workflow is now active and will execute when triggers occur
Draft vs Active:
- Draft: Saved but not active, won't execute
- Active: Enabled and executing when triggers occur
Managing Workflows
Viewing Workflows
View all workflows in the workflows list.
- Go to Workflow > Workflows
- View all workflows with:
- Name: Workflow name
- Status: Active, Inactive, Draft
- Type: Workflow type
- Trigger: Trigger description
- Executions: Number of times executed
- Last Executed: Last execution time
- Created: Creation date
Editing Workflows
Edit existing workflows.
- Go to Workflow > Workflows
- Click on a workflow name
- Click Edit to open workflow builder
- Make changes
- Click Save
- Test if needed
- Click Activate to re-activate
Important: Editing an active workflow may affect running instances. Consider deactivating before major changes.
Deactivating Workflows
Deactivate workflows temporarily.
- Go to Workflow > Workflows
- Find the workflow you want to deactivate
- Click Deactivate
- Confirm deactivation
- Workflow stops executing immediately
Use Cases:
- Temporarily disable workflows
- Troubleshoot issues
- Make major changes
- Seasonal workflows
Deleting Workflows
Delete workflows that are no longer needed.
- Go to Workflow > Workflows
- Find the workflow you want to delete
- Click Delete
- Confirm deletion
Warning: Deleting a workflow cannot be undone. Consider deactivating instead if you might need it later.
Duplicating Workflows
Duplicate workflows to create similar workflows.
- Go to Workflow > Workflows
- Find the workflow you want to duplicate
- Click Duplicate
- Enter new workflow name
- Click Duplicate
- Edit the duplicated workflow as needed
Use Cases:
- Create variations of existing workflows
- Test new workflows without affecting originals
- Create workflows for different channels
Common Workflow Examples
Auto-Assignment Workflow
Automatically assign conversations based on criteria.
Example:
- Trigger: New conversation started
- Condition: Message contains "technical" OR "bug" OR "error"
- Action: Assign to Technical Support team
- Action: Add tag "Technical Issue"
Welcome Message Workflow
Send welcome message to new customers.
Example:
- Trigger: New conversation started
- Condition: Contact is new (no previous conversations)
- Action: Send message "Welcome! How can we help you today?"
- Action: Add tag "New Customer"
Escalation Workflow
Escalate conversations that aren't responded to.
Example:
- Trigger: Conversation assigned
- Condition: No response after 30 minutes
- Action: Notify manager
- Action: Add tag "Escalated"
- Action: Assign to escalation queue
Tag-Based Routing Workflow
Route conversations based on tags.
Example:
- Trigger: Tag added to conversation
- Condition: Tag equals "Sales"
- Action: Assign to Sales team
- Condition: Tag equals "Support"
- Action: Assign to Support team
Follow-Up Workflow
Send follow-up messages after resolution.
Example:
- Trigger: Conversation resolved
- Condition: Contact has property "Follow Up" = true
- Action: Wait 24 hours
- Action: Send message "How was your experience? We'd love your feedback!"
- Action: Add tag "Follow-Up Sent"
Business Hours Routing Workflow
Handle conversations outside business hours.
Example:
- Trigger: New conversation started
- Condition: Current time is outside business hours
- Action: Send message "We're currently offline. We'll respond within 24 hours."
- Action: Add tag "After Hours"
- Action: Assign to queue for next business day
Advanced Workflow Features
Workflow Variables
Use variables in workflows for dynamic content.
Available Variables:
{contact.name}- Contact name{contact.email}- Contact email{contact.company}- Contact company{conversation.id}- Conversation ID{message.content}- Message content{agent.name}- Assigned agent name{current.time}- Current time{property.name}- Custom property value
Usage:
- Use in messages:
Hi {contact.name}, thank you for contacting us! - Use in conditions: Check if
{contact.company}equals "Example Corp" - Use in webhooks: Pass data to external systems
Webhook Integration
Trigger external APIs or webhooks from workflows.
- Add Trigger Webhook action
- Configure:
- URL: Webhook endpoint URL
- Method: GET, POST, PUT, DELETE
- Headers: Custom HTTP headers
- Body: Request body (JSON, form data, etc.)
- Variables: Include workflow variables
- Test webhook connection
- Save action
Use Cases:
- Update external CRM systems
- Trigger notifications in other tools
- Sync data with third-party services
- Integrate with custom applications
Conditional Branching
Create complex workflows with conditional branching.
Branching Options:
- If-Then-Else: Execute different actions based on conditions
- Switch-Case: Multiple paths based on variable value
- Parallel Branches: Execute multiple paths simultaneously
- Nested Branches: Branches within branches
Best Practices:
- Keep branching logic simple
- Document complex workflows
- Test all branches
- Limit nesting depth
Error Handling
Handle errors in workflows.
Error Handling Options:
- Retry: Automatically retry failed actions
- Fallback Action: Execute alternative action on error
- Notify Admin: Send notification on error
- Log Error: Record error for debugging
- Continue: Continue workflow despite errors
Configure Error Handling:
- Select action that might fail
- Click Error Handling
- Configure:
- Retry Count: Number of retries
- Retry Delay: Delay between retries
- Fallback Action: Alternative action
- Notify: Notification settings
- Save configuration
Workflow Analytics
Track workflow performance and execution.
View Workflow Analytics:
- Go to Workflow > Analytics
- View metrics:
- Execution Count: Number of times executed
- Success Rate: Percentage of successful executions
- Average Execution Time: Average time to execute
- Error Rate: Percentage of failed executions
- Most Used Workflows: Top executed workflows
Workflow Execution Log:
- Go to Workflow > Executions
- View execution history:
- Workflow: Workflow name
- Triggered: Trigger time
- Completed: Completion time
- Status: Success, Failed, In Progress
- Actions Executed: List of actions executed
- Errors: Any errors encountered
Use Analytics To:
- Identify bottlenecks
- Optimize workflow performance
- Debug issues
- Improve efficiency
Best Practices
Workflow Design
- Start Simple: Begin with simple workflows and add complexity gradually
- Clear Purpose: Each workflow should have a clear, single purpose
- Documentation: Document complex workflows for team understanding
- Naming: Use descriptive names for workflows
- Organization: Organize workflows by purpose or department
Performance
- Efficient Conditions: Use efficient conditions to reduce processing time
- Limit Actions: Don't add too many actions per workflow
- Avoid Infinite Loops: Ensure workflows have exit conditions
- Test Thoroughly: Test workflows before activating
- Monitor Performance: Monitor workflow performance regularly
Maintenance
- Regular Review: Review workflows regularly for optimization
- Update Conditions: Update conditions as business needs change
- Remove Unused: Delete workflows that are no longer needed
- Version Control: Document changes to workflows
- Backup: Export workflows for backup
Error Prevention
- Validate Inputs: Ensure conditions are valid
- Handle Errors: Configure error handling for all actions
- Test Edge Cases: Test workflows with edge cases
- Monitor Errors: Monitor error logs regularly
- Fix Promptly: Fix errors promptly to avoid issues
Troubleshooting
Workflow Not Executing
Common Causes:
- Workflow is inactive or draft
- Trigger conditions not met
- Workflow conditions preventing execution
- Errors in workflow configuration
Solutions:
- Verify workflow is active
- Check trigger conditions
- Review workflow conditions
- Test workflow manually
- Check error logs
Actions Not Executing
Common Causes:
- Conditions not met
- Action configuration errors
- External service errors (webhooks, etc.)
- Permissions issues
Solutions:
- Check condition logic
- Verify action configuration
- Test external services
- Check permissions
- Review error logs
Workflow Too Slow
Common Causes:
- Too many conditions
- Complex logic
- External API calls (webhooks)
- High volume of executions
Solutions:
- Simplify workflow logic
- Optimize conditions
- Add delays strategically
- Consider parallel processing
- Monitor performance metrics
Support
Need help with Workflows? Visit our Help Center (opens in a new tab) or contact support@ulka.chat.