Workflow Settings
Configure business hours, holiday calendars, SLA deadlines, retry policies, and backlog monitoring for your organization's automated workflows.
Workflow Settings let you customize how automated workflows behave for your organization. Configure business hours and holiday calendars to control when workflows run, set up SLA tracking with escalation deadlines, define retry policies for failed actions, and monitor workflow backlogs to catch bottlenecks early.
Accessing Workflow Settings
Navigate to Settings → Workflow Settings to configure these options. Admin or Owner role required.
Holiday Calendar Settings
Control when workflows consider “business days” for scheduling and deadlines.
Calendar Types
| Calendar | Description | Best For |
|---|---|---|
| US Federal | US federal holidays (10 days/year) | US-based organizations |
| US Bank | Banking holidays (12 days/year) | Financial services |
| Custom | Only your specified dates | International or unique schedules |
Configuration Options
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn holiday handling on/off | On |
| Calendar Type | Base calendar to use | US Federal |
| Custom Holidays | Additional dates to treat as holidays | Empty |
| Skip Holidays | Skip workflow deadlines on holidays | On |
| Skip Weekends | Skip Saturday/Sunday | On |
Adding Custom Holidays
- Navigate to Settings → Workflow Settings
- In the Holiday Settings section, click Add Holiday
- Enter:
- Date: The holiday date
- Name: Description (e.g., “Company Retreat Day”)
- Click Save
Custom holidays supplement the base calendar—you don’t need to re-add federal holidays.
How Holidays Affect Workflows
When a workflow action is scheduled to occur on a holiday or weekend:
Scheduled: Friday 5 PM → Review due Monday
If Monday is a holiday → Review due Tuesday
Scheduled: Invoice processing every day
Skip weekends ON → Processes Mon-Fri only
Skip holidays ON → Skips federal holidays
Common Scenarios
Financial services: Use “US Bank” calendar to align with bank processing days.
International team: Use “Custom” calendar with only your office closures.
24/7 operations: Disable “Skip Holidays” and “Skip Weekends” for continuous processing.
Business Hours Settings
Define your organization’s working hours so workflow deadlines, SLA timers, and escalations respect your actual business schedule.
Configuration Options
| Setting | Description | Default |
|---|---|---|
| Start Time | Business day start | 9:00 AM |
| End Time | Business day end | 5:00 PM |
| Working Days | Days of the week considered business days | Monday-Friday |
| Timezone | Organization timezone | US/Eastern |
Business hours work with holiday calendars — SLA timers and escalation deadlines only count time during business hours on non-holiday working days.
SLA Tracking Settings
Set per-state SLA deadlines to track how long workflow items spend in each stage and escalate when deadlines are missed.
Configuration Options
| Setting | Description | Default |
|---|---|---|
| SLA Deadline | Maximum time allowed in a workflow state | None |
| Warning Threshold | Percentage of SLA at which to warn | 80% |
| Escalation Action | What happens when SLA is breached | Notify owner |
| Business Hours Only | Count only business hours toward SLA | On |
How SLA Tracking Works
Invoice enters "Pending Approval" state
↓
SLA: 2 business days
↓
After 1.6 business days (80%) → Warning sent to approver
↓
After 2 business days → Escalation triggers (reassign, notify manager, etc.)
SLA deadlines respect business hours and holiday settings — an item entering “Pending Approval” at 4 PM Friday with a 4-hour SLA doesn’t breach until 1 PM Monday.
Retry Policy Settings
Configure how workflows handle temporary failures and retry failed actions.
Backoff Strategies
| Strategy | Behavior | Best For |
|---|---|---|
| Exponential | Delays increase exponentially (30s → 60s → 120s) | API rate limits, external services |
| Linear | Fixed increase between retries (30s → 60s → 90s) | Predictable recovery times |
| None | Same delay every retry | Simple failures |
Configuration Options
| Setting | Description | Default |
|---|---|---|
| Max Retries | Maximum retry attempts | 3 |
| Retry Delay | Initial delay before first retry | 60 seconds |
| Backoff Strategy | How delay increases | Exponential |
| Backoff Multiplier | Factor for exponential/linear increase | 2.0x |
| Max Delay | Maximum wait between retries | 1 hour |
| Retry on Errors | Which error types trigger retry | timeout, rate_limit, temporary |
Error Types
| Error Type | Description | Auto-Retry |
|---|---|---|
| timeout | Request timed out | Yes |
| rate_limit | Too many requests | Yes (with backoff) |
| temporary | Temporary service issue | Yes |
| network | Connection problems | Yes |
| processing | Processing failed | Optional |
| validation | Invalid data | No |
| permission | Access denied | No |
Example Configurations
High reliability (financial):
Max Retries: 5
Retry Delay: 30 seconds
Backoff Strategy: Exponential
Backoff Multiplier: 1.5x
Max Delay: 30 minutes
Retry on: timeout, rate_limit, temporary, network
Quick fail (real-time):
Max Retries: 2
Retry Delay: 10 seconds
Backoff Strategy: None
Max Delay: 10 seconds
Retry on: timeout only
Conservative (sensitive operations):
Max Retries: 2
Retry Delay: 5 minutes
Backoff Strategy: None
Max Delay: 5 minutes
Retry on: temporary only
How Retries Work
Action fails with "timeout" error
↓
Wait 60 seconds (initial delay)
↓
Retry #1 → fails again
↓
Wait 120 seconds (60 × 2.0 multiplier)
↓
Retry #2 → fails again
↓
Wait 240 seconds (120 × 2.0 multiplier)
↓
Retry #3 → succeeds! ✓
If all retries fail, the workflow enters “Failed” state and can be manually retried or the error investigated.
Backlog Monitoring Settings
Monitor workflow queue health and get alerts when processing falls behind.
Why Monitor Backlog?
Large backlogs indicate:
- Processing bottlenecks
- Integration issues
- Capacity problems
- Configuration errors
Early alerts prevent:
- Missed deadlines
- Customer delays
- Compliance issues
- Data staleness
Configuration Options
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn backlog monitoring on/off | On |
| Threshold | Items pending before alerting | 100 |
| Alert Channels | Where to send alerts | |
| Custom Emails | Additional recipients | Empty |
| Webhook URL | External service webhook | None |
| Check Interval | How often to check | 15 minutes |
| Alert Cooldown | Minimum time between alerts | 60 minutes |
Alert Channels
| Channel | Description | Setup |
|---|---|---|
| Email to admins | Automatic | |
| Custom Emails | Additional recipients | Add addresses |
| Webhook | POST to external URL | Provide webhook URL |
Webhook Payload
When using webhook alerting, Muin sends:
{
"alert_type": "workflow_backlog",
"tenant_id": "your-tenant-id",
"current_count": 150,
"threshold": 100,
"severity": "warning",
"oldest_pending_at": "2025-01-15T10:30:00Z",
"timestamp": "2025-01-15T12:00:00Z"
}
Severity Levels
| Severity | Condition | Recommended Action |
|---|---|---|
| Info | Count at 75-90% of threshold | Monitor |
| Warning | Count at 90-100% of threshold | Investigate |
| Critical | Count exceeds threshold | Immediate action |
Best Practices
Set appropriate thresholds:
- Low volume organizations: 25-50 items
- Medium volume: 50-100 items
- High volume: 100-500 items
Use multiple channels:
- Email for all alerts
- Webhook for critical systems (PagerDuty, Slack)
Tune check intervals:
- Real-time critical: 5 minutes
- Standard operations: 15 minutes
- Background processing: 30-60 minutes
Viewing Backlog Status
The Workflow Settings page shows current backlog status:
| Status | Indicator | Meaning |
|---|---|---|
| Healthy | Green | Below threshold |
| Warning | Yellow | Approaching threshold |
| Critical | Red | Exceeds threshold |
Information displayed:
- Current pending count
- Configured threshold
- Oldest pending item age
- Last alert sent time
Applying Settings
Immediate Effect
Changes to settings take effect immediately for new workflow actions:
- Holiday settings affect scheduling from this point forward
- Retry settings apply to new failures
- Backlog alerts use new thresholds
Existing Items
In-progress workflows continue with their original settings. To apply new settings:
- Retry policy: Cancel and restart workflow
- Holiday settings: Reschedule pending actions
Permissions
| Action | Required Role |
|---|---|
| View settings | Admin, Owner |
| Modify settings | Admin, Owner |
| Receive backlog alerts | Admin, Owner (auto), Custom emails |
Troubleshooting
Workflows Not Skipping Holidays
- Verify Holiday Settings are Enabled
- Check the holiday date is correct
- Confirm the workflow uses business day scheduling
- Manual “Run Now” actions bypass holiday settings
Too Many Retries
- Review which error types are enabled
- Consider reducing max retries
- Check if errors are truly temporary
- Some errors (validation, permission) should not retry
Backlog Alerts Not Sending
- Verify Backlog Monitoring is Enabled
- Check current count exceeds threshold
- Verify email addresses/webhook URL
- Check cooldown hasn’t prevented recent alert
Alert Fatigue
- Increase threshold to realistic level
- Extend alert cooldown period
- Use severity filtering in your monitoring system
- Fix root cause of backlog growth
Related Documentation
- Building Workflows - Create automated workflows
- Workflow Templates - Pre-built workflow patterns
- Exception Reports - View workflow and processing issues