Schedule

Generate the optimal schedule for your employees.

Score: ?

Staff Management

Manage staff members, their roles, skills, and work preferences.

Contract Management

Manage work contracts with shift rules and time constraints.

Rules Management

Manage scheduling rules, constraints, and dependencies.

Settings

Configure application settings and manage system roles

Role Management
Manage system roles for staff members
Language & Localization
Configure application language and regional settings
Language functionality will be implemented in a future update
Timezone functionality will be implemented in a future update

Help & Documentation

Everything you need to know about using the scheduling system

Getting Started

Welcome! This scheduling system helps you create optimal work schedules for your team. Here's how to get started:

1
Set up your staff

Go to Staff Management and add all your employees with their skills and availability.

2
Apply contracts

In Contracts Management, create and assign work contracts to define working hours and conditions.

3
Configure rules

Set up scheduling rules in Rules Management to ensure compliance with labor laws and company policies.

4
Create your schedule

Return to Schedule, add shifts, and click "Schedule" to generate an optimized plan.

Core Features Explained

  • Add shifts: Click the blue "+" button to create new shifts. Select shift type, set priority (1-10), and choose dates.
  • Generate schedule: Click "Schedule" to let the AI assign staff based on availability, skills, and rules.
  • View modes: Switch between "By location" and "By employee" views for different perspectives.
  • Edit shifts: Click any shift in the timeline to modify or delete it.
  • Score indicator: The score shows how well the schedule meets all constraints. Higher is better!

  • Add employees: Create staff profiles with name, email, and employment details.
  • Assign skills: Mark which tasks each employee can perform.
  • Set availability: Define when employees can and cannot work.
  • Manage preferences: Record employee scheduling preferences and constraints.
  • Track status: Monitor active/inactive employees and their current assignments.

  • Create contracts: Define different employment contract types (full-time, part-time, etc.).
  • Set hours: Specify minimum and maximum working hours per week/month.
  • Configure breaks: Define required break times and rest periods.
  • Assign to staff: Link contracts to specific employees.
  • Ensure compliance: The system automatically respects contract terms when scheduling.

  • Labor law compliance: Set rules for maximum consecutive days, minimum rest periods, etc.
  • Skill requirements: Ensure shifts are only assigned to qualified staff.
  • Coverage rules: Define minimum staffing levels for different times/locations.
  • Custom constraints: Add organization-specific scheduling rules.
  • Priority levels: Set which rules are mandatory vs. preferred.

Tips & Best Practices

Start with clean data

Ensure all employee information is up-to-date before generating schedules. This includes skills, availability, and contract details.

Use appropriate priorities

Set shift priorities thoughtfully. Critical shifts should be 8-10, normal shifts 4-7, and optional shifts 1-3.

Plan ahead

Create schedules at least 2 weeks in advance to give employees time to plan and request changes.

Iterate and improve

After generating a schedule, you can manually adjust it. The system learns from your changes over time.

Troubleshooting

Schedule won't generate?
Check that you have enough available staff with the required skills for all shifts. Also verify that your rules aren't too restrictive.
Low schedule score?
This usually means some constraints are being violated. Click the "?" button next to the score to see which rules are causing issues.
Employee not being scheduled?
Verify the employee's availability, skills match shift requirements, and their contract allows the hours.
Changes not saving?
Ensure you're connected to the internet and logged in. Check for any error messages in red at the top of the screen.

REST API Guide

Employee Scheduling solver integration via cURL

1. Download real data

            
            curl -X GET -H 'Accept:application/json' http://localhost:8080/real-data -o sample.json
    

2. Post the sample data for solving

The POST operation returns a jobId that should be used in subsequent commands.

            
            curl -X POST -H 'Content-Type:application/json' http://localhost:8080/schedules -d@sample.json
    

3. Get the current status and score

            
            curl -X GET -H 'Accept:application/json' http://localhost:8080/schedules/{jobId}/status
    

4. Get the complete solution

            
            curl -X GET -H 'Accept:application/json' http://localhost:8080/schedules/{jobId}
    

5. Fetch the analysis of the solution

            
            curl -X PUT -H 'Content-Type:application/json' http://localhost:8080/schedules/analyze -d@solution.json
    

5. Terminate solving early

            
            curl -X DELETE -H 'Accept:application/json' http://localhost:8080/schedules/{id}
    

REST API Reference