Docs
  • Solver
  • Models
    • Field Service Routing
    • Employee Shift Scheduling
    • Pick-up and Delivery Routing
  • Platform
Try models
  • Employee Shift Scheduling
  • User guide
  • Integration
  • latest
    • latest
    • 1.18.x

Employee Shift Scheduling

    • Introduction
    • Getting started: Hello world
    • User guide
      • Terms
      • Use case guide
      • Planning AI concepts
      • Integration
      • Constraints
      • Understanding the API
      • Demo datasets
      • Planning window
      • Time zones and Daylight Saving Time (DST)
      • Tags and tag types
      • Input validation
      • Metrics and optimization goals
      • Score analysis
    • Employee resource constraints
      • Employee contracts
      • Employee availability
      • Pairing employees
      • Shift travel and locations
      • Employee activation
      • Work limits
        • Minutes worked per period
        • Minutes worked in a rolling window
        • Minutes logged per period
        • Days worked per period
        • Days worked in a rolling window
        • Consecutive days worked
        • Shifts worked per period
        • Shifts worked in a rolling window
        • Weekend minutes worked per period
        • Weekends worked per period
        • Weekends worked in a rolling window
        • Consecutive weekends worked
      • Time off
        • Days off per period
        • Consecutive days off per period
        • Consecutive days off in a rolling window
        • Consecutive minutes off in a rolling window
        • Shifts to avoid close to day off requests
        • Consecutive weekends off per period
      • Shift rotations and patterns
        • Shift rotations
        • Single day shift sequence patterns
        • Minimize gaps between shifts
        • Multi-day shift sequence patterns
        • Daily shift pairings
        • Overlapping shifts
        • Shift start times differences
        • Minutes between shifts
      • Shift type diversity
        • Shift tag types
        • Shift types worked per period
        • Unique tags per period
      • Fairness
        • Balance time worked
        • Balance shift count
    • Shift service constraints
      • Alternative shifts
      • Cost management
      • Demand-based scheduling
      • Mandatory and optional shifts
      • Shift assignments
      • Skills and risk factors
    • Manual intervention
    • Recommendations
    • Real-time planning
    • Real-time planning (preview)
    • Scenarios
      • Configuring labor law compliance
    • Changelog
    • Upgrade to the latest version
    • Feature requests

Integration

Integrating with Timefold Platform gives you access to Timefold’s solver technology which allows you to:

  • Solve your planning problems and optimize your plans.

  • Respond to change with recommendations and real-time planning.

  • Receive insights about your planning problems.

  • Analyze and compare your solutions.

1. API

Timefold Platform is integrated with your existing systems through our API.

  1. Your systems create input datasets with your problem data that is sent to Timefold by the API.

  2. Timefold solves the input dataset and sends back an output dataset with the optimized results, input metrics, and output metrics.

This approach means you maintain control over your data. The planning data and planning module remain part of your own backend system, or they could be embedded as a CRM module.

2. Basic workflow

  1. Your system gathers the problem data.

  2. Your system make a POST call sending the planning data (input dataset) to Timefold.

  3. Timefold optimizes the plan.

  4. Timefold sends the solution (output dataset).

  5. Your system processes the results.

3. Waiting for completion

Solving is an asynchronous process which might take several minutes and in some cases even hours depending on your configuration. In order to check the status of an optimization you have 3 options, each with their own trade-offs.

Mechanism Key Advantages Key trade-offs

Webhooks

Real-time, efficient, auditable (via Platform UI)

Public endpoint, security & retries

Server Sent Events (SSE)

Simple real-time push

One-way, long-lived connections

Polling

Simple, universal

Inefficient

4. Responding to change

Plans are rarely executed without modifications as it is often necessary to respond to real-world events, such as a customer being suddenly unavailable or an employee calling in sick.

When plans need to be updated, you can update your original input dataset (or the latest version if this is not the first change) with the new data.

  1. Your system registers there has been a change.

  2. Your system make a POST call sending updated planning data (input dataset) to Timefold.

  3. Timefold optimizes the plan.

  4. Timefold sends the solution (output dataset).

  5. Your system processes the results.

5. Working with recommendations

When you need help figuring out which employee can cover a shift at the last minute or which technician to send to an emergency visit, you can use the recommendation engine.

Recommendations don’t re-optimize an existing plan, but they do help your support staff offer customers options, which once accepted can optionally be added to an updated plan:

  1. Your system registers there has been a request for a change.

  2. Your system makes a POST call to the recommendation endpoint with the ID of the entity it needs a recommendation for.

  3. Timefold send back a list of recommendations.

  4. (Optional) Your system make a POST call sending updated planning data (input dataset) to Timefold.

  5. Timefold optimizes the plan.

  6. Timefold sends the solution (output dataset).

  7. Your system processes the results.

  • © 2026 Timefold BV
  • Timefold.ai
  • Documentation
  • Changelog
  • Send feedback
  • Privacy
  • Legal
    • Light mode
    • Dark mode
    • System default