Shift board

The Shift board is where you close gaps in the schedule without manually searching for a replacement. You create a vacant shift, and the system offers it to matching employees in the Telegram bot — one group at a time, in waves, until someone accepts.

Who sees this

Only users who manage the schedule (the "Shifts" permission) can see the shift board.

Opening the shift board

On the schedule page, next to the status legend, there's a "Shift board" button. It opens a panel that slides up from the bottom of the screen — open shifts, swap requests, and the create form all live there. There's no separate page in the sidebar anymore: the shift board is a panel over the schedule, not a standalone section.

What an open shift is

An open shift is a record that says "we need someone on this date, in this department, for this time slot" — not yet assigned to anyone. It isn't tied to a specific employee: as soon as someone claims it, it turns into a regular shift on the schedule.

Creating an open shift

  1. Open the shift board and click Create.
  2. Fill in the fields:
    • Date — which day the shift is for.
    • Department — which department needs a person.
    • Position — optional; leave it blank and any employee from the department qualifies.
    • Time — pick one of the organization's shift presets, or switch to manual entry and set the start and end time yourself.
    • Number of people — how many employees are needed for this shift (1 to 10).
    • Note — an optional comment for candidates.
  3. Click Create. If no matching employees are found, you'll see a warning — the shift is still created, but there's no one to send the offer to yet.

How the system picks candidates, and what waves are

Once a shift is created, the system automatically matches employees who:

  • are in the same department, and, if a position was specified, hold the same position;
  • are free that day (no conflict with another shift);
  • have not marked themselves "can't work" that day in the bot.

Among the matching employees, anyone who already marked "✋ want a shift" in the bot gets the offer first — that's wave one. If nobody from wave one responds, after a configurable delay (60 minutes by default) the offer automatically goes out to the rest of the matching employees — that's wave two. No manual calling around — the waves go out on their own.

What the employee sees in the bot

The employee receives a Telegram message with the shift's date, time, department, and position, plus two buttons:

  • ✅ Take it — the employee accepts the shift;
  • Skip — the employee declines this offer.

As soon as someone is the first to tap "Take it," the shift is filled: everyone else who already received the offer gets a "this shift has been taken" message. If the employee already has another shift that same day, the system reports the conflict and the claim doesn't go through.

Instant claim vs. manager confirmation

By default, tapping "Take it" instantly puts the shift on the employee's schedule — no manager involved. This is what makes the schedule "self-filling."

If that doesn't fit your workflow, you can turn it off under Settings → Organization → Shifts, in the "Open shifts" section:

  • Instant claim — a toggle; turning it off means an employee's response becomes a request instead of an automatic assignment.
  • Time before the next wave — how many minutes to wait for a response from the current wave of candidates before offering it to the next ones (5 minutes to 24 hours, 60 minutes by default).

When instant claim is off, an employee's request lands on the shift board with a "pending confirmation" status. The manager can approve it — the shift then appears on the employee's schedule — or reject it, which reopens the shift so the offer can keep going out.

Tracking statuses

The shift board shows every shift with its status:

  • open — offers have gone out, no response yet;
  • pending confirmation — an employee tapped "Take it," but manager approval is required (only when instant claim is off);
  • filled — the shift is on the employee's schedule;
  • cancelled — you cancelled the shift manually.

Next to each shift you can see how many employees were offered it and how many declined. You can cancel a shift at any time before it's filled.

Swap requests

Besides open shifts, the shift board shows swap requests — they appear in a section at the very top.

An employee who already has a shift on the schedule can ask for a swap right from the Telegram bot with the "🔁 Request a swap" button. The employee never removes the shift themselves — the decision is always made by the manager here, on the shift board.

Each request shows who sent it, the shift's date and time, and the employee's note, if any. You have two options:

  • Approve — the shift is atomically removed from the employee and moved to the shift board: the system immediately starts offering it in waves to matching candidates, just like a regular open shift. The employee gets a confirmation in the bot.
  • Reject — the request is closed and the shift stays with the employee unchanged. The employee gets a decline message in the bot.

If the shift was already changed or removed by the time you decide, the request closes automatically and you'll see a note about it. If the employee has no department set, the request can't be approved with the button — remove the shift manually on the schedule instead.

The dashboard metric

The dashboard has a "Shifts self-fill" card — the percentage of open shifts that employees filled within 24 hours without any manager involvement. The higher the number, the less manual work goes into closing gaps in the schedule.

Was this article helpful?