v2026.1 Open Portal ↗
On this page

Business Hours

Business Hours Configuration

Business hours schedules define when an organization is operationally active. They are used by SLA policies to calculate only active work time toward SLA targets, by escalation policies to adjust notification timing, and by workflow conditions (e.g., only auto-remediate during business hours). Multiple schedules can be created for different teams, locations, or service tiers.

⚙️ Minimum Requirements
  • DynamoDB: StackFlow_BusinessHours table with at least one active schedule record including timezone
  • DynamoDB: StackFlow_MaintenanceWindow table for planned outage/maintenance periods
  • SLA Engine: StackFlowSLAChecker Lambda must read business hours records to pause/resume SLA timers correctly
{
  "business_hours": {
    "name": "US Eastern Standard Business Hours",
    "timezone": "America/New_York",
    "weekly_schedule": {
      "Monday": {"start": "09:00", "end": "18:00"},
      "Tuesday": {"start": "09:00", "end": "18:00"},
      "Wednesday": {"start": "09:00", "end": "18:00"},
      "Thursday": {"start": "09:00", "end": "18:00"},
      "Friday": {"start": "09:00", "end": "17:00"},
      "Saturday": null,
      "Sunday": null
    }
  }
}

Holiday Calendar

Holiday calendars are attached to business hours schedules to exclude public holidays and company-observed holidays from SLA calculations. StackFlow includes pre-loaded US Federal holidays and allows custom holiday dates. Holidays can be set as full-day exclusions or partial exclusions (e.g., Christmas Eve half-day).

Tip: Create separate holiday calendars for different countries if your organization operates globally. Link the appropriate calendar to each location's business hours schedule to ensure SLA calculations reflect local holidays.

Maintenance Windows

Maintenance windows are time periods during which SLA timers are paused for specific CIs or services. Configure recurring windows (e.g., every Sunday 1-5 AM) or one-time windows for planned maintenance. During a maintenance window, incident SLA timers for the specified CIs are paused and auto-remediation safety controls prevent automated actions on those CIs.

SettingDescription
NameDescriptive name (e.g., "Weekly DB Maintenance")
RecurrenceOne-time, weekly, monthly
Start / EndDate-time with timezone
Affected CIsCMDB CI references (or "All" for global window)
Pause SLA TimersYes/No
Block Auto-RemediationYes/No

Using Business Hours in SLAs

Reference a business hours schedule in SLA policy configuration by setting business_hours_schedule_id. When set, the SLA timer only counts time during the scheduled active hours. For example, a P3 incident created at 4 PM Friday with a 24 business-hour SLA would not be due until roughly 4 PM on Tuesday (accounting for the weekend).

Multiple Schedules

Large organizations often need multiple business hours schedules: one for US-based teams (Eastern time), one for EU teams (CET), and a 24x7 schedule for critical infrastructure support. Each SLA policy references one schedule. The same schedule can be referenced by multiple SLA policies, making it easy to update hours organization-wide by modifying a single schedule.