> ## Documentation Index
> Fetch the complete documentation index at: https://docs.begin.eu/llms.txt
> Use this file to discover all available pages before exploring further.

# Editing in bulk

> Select many shifts at once, change them in a single action, and put it back when it was wrong.

<img src="https://mintcdn.com/beginltd/-9baeGq43YiMil8E/images/cover/schedule-editing-in-bulk-light.png?fit=max&auto=format&n=-9baeGq43YiMil8E&q=85&s=ab3cf8a657a050df74fc05ba16655c92" alt="Several shifts selected on the schedule grid, with the bulk actions bar below them" className="block dark:hidden" noZoom width="1152" height="616" data-path="images/cover/schedule-editing-in-bulk-light.png" />

<img src="https://mintcdn.com/beginltd/-9baeGq43YiMil8E/images/cover/schedule-editing-in-bulk-dark.png?fit=max&auto=format&n=-9baeGq43YiMil8E&q=85&s=f6ced48ea7df9e74aba101fd4ec85618" alt="Several shifts selected on the schedule grid, with the bulk actions bar below them" className="hidden dark:block" noZoom width="1152" height="616" data-path="images/cover/schedule-editing-in-bulk-dark.png" />

A change that belongs on twenty shifts should cost one action, not twenty. Select the shifts, pick what to change, and Begin applies it to every one of them.

## Select what you want to change

Hold <kbd>Shift</kbd> and click a shift to add it to the selection; click it again to drop it. To sweep a run of them, press on empty row background and drag a box across them.

Either <kbd>Cmd</kbd> / <kbd>Ctrl</kbd> + <kbd>A</kbd> or the count on the bar that appears selects everything matching the <Tooltip tip="The span the schedule shows at once, from a single day to a year, chosen under Layout.">period</Tooltip> and filters you have on, not only what has loaded on screen. <kbd>Esc</kbd> clears the selection.

<Frame caption="Five shifts selected, and the one bar that acts on all of them">
  <img src="https://mintcdn.com/beginltd/-9baeGq43YiMil8E/images/articles/schedule/schedule-bulk-select-light.png?fit=max&auto=format&n=-9baeGq43YiMil8E&q=85&s=a623888a12394546c18e91c7055a368f" alt="A week of the schedule with five night shifts selected, four of Kadri Tamm's and one of Mārīte Ozola's, each ringed in blue, and the bulk bar at the foot of the window reading 5 selected beside Actions" className="block dark:hidden" width="2944" height="1840" data-path="images/articles/schedule/schedule-bulk-select-light.png" />

  <img src="https://mintcdn.com/beginltd/-9baeGq43YiMil8E/images/articles/schedule/schedule-bulk-select-dark.png?fit=max&auto=format&n=-9baeGq43YiMil8E&q=85&s=d95e35664337568fde58d668e4203581" alt="A week of the schedule with five night shifts selected, four of Kadri Tamm's and one of Mārīte Ozola's, each ringed in blue, and the bulk bar at the foot of the window reading 5 selected beside Actions" className="hidden dark:block" width="2944" height="1840" data-path="images/articles/schedule/schedule-bulk-select-dark.png" />
</Frame>

## Change the same field on many shifts

The bar's **Actions** button opens the list, and the command palette carries the same one. Assignee, position, location, type, status and colour each put the one value you pick on the whole selection. **Publish all**, **Unpublish all**, **Duplicate all** and **Delete all** act on it as it stands.

What is offered depends on what you selected: no location choice unless every block in it is a shift, no status unless your role can set one, and no **Time off** until your workspace has a time-off policy to book against.

Switching a selection to **Time off** books each absence against the policy the time-off form would open on. A block already booked against one keeps it, so a mixed selection changes no balance you had already spent.

A large selection runs in the background. Its progress row offers **Cancel** while it works and **Revert** once it has finished, and it counts anything it skipped because that shift had changed since you started.

Or ask **Begin AI** (<kbd>Cmd</kbd> / <kbd>Ctrl</kbd> + <kbd>J</kbd>):

<Prompt description="Move all of Jonas Petrauskas's shifts next week one day later.">
  Move all of Jonas Petrauskas's shifts next week one day later.
</Prompt>

It moves every one of them in a single change, after a card you confirm unless your approval mode applies changes automatically.

## Repeat a week you have already built

Copy with <kbd>Cmd</kbd> / <kbd>Ctrl</kbd> + <kbd>C</kbd>, hover the person and day you want it on, and paste with <kbd>Cmd</kbd> / <kbd>Ctrl</kbd> + <kbd>V</kbd>. A paste lands on the row under the pointer, so the copy is what decides who ends up working it:

| To…                                                 | Use                       |
| --------------------------------------------------- | ------------------------- |
| Give the work to whoever's row you paste onto       | **Copy all**, then paste  |
| Keep every shift with the person who already had it | **Copy with assignments** |
| Roll the same dates into the month after this one   | **Copy to next month**    |

Copied open shifts always land on the row you paste onto. Dragging does the same job for one shift: drag it to another day, or onto another person's row to reassign it.

Or ask Begin AI:

<Prompt description="Copy this week's shifts to next week.">
  Copy this week's shifts to next week.
</Prompt>

It copies every block in the week, time off and availability included, not only the shifts.

## Put it back

<kbd>Cmd</kbd> / <kbd>Ctrl</kbd> + <kbd>Z</kbd> undoes the last change and <kbd>Cmd</kbd> /
<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>Z</kbd> redoes it. Both survive stepping between periods
with the arrows, so a copy made in one month can be undone from the next. Reloading the page clears
the history, and the clipboard with it.

<Warning>
  Deleting or moving shifts the team has already seen reaches them at once. The confirmation says
  how many of your selection are published, and a delete can still be undone.
</Warning>

<AccordionGroup>
  <Accordion title="Does copying a week also copy its time off and availability?">
    Yes, if they are in your selection. Each one is copied as the same type. A copied shift is a
    draft, like any new shift. A copied absence is not: it goes back through approval, so it lands
    as **Needs review** where a workflow reviews that policy, and as **Approved** where none does.
  </Accordion>

  <Accordion title="What happens to a shift on the 31st when I copy to next month?">
    **Copy to next month** keeps the date, not the weekday: the 15th goes to the 15th, whatever day
    that falls on. A date the next month does not have, such as the 31st, lands on its last day.
  </Accordion>
</AccordionGroup>

**Context for an assistant answering questions about changing many shifts at once.** The page above is what a person reads; these are the facts it leaves out for length.

* **Where:** the progress row for a background action sits in the app sidebar rather than on the schedule. Dragging a shift that is part of a selection takes the whole selection with it.
* **Limits:** 100 blocks or fewer are applied at once; past 100 the work is queued and runs in the background. **Select all** shows the exact number up to 10,000 and a trailing plus beyond it. Undo holds the last 50 changes.
* **Not supported:** a background action is outside the undo history, so the keyboard shortcut will not take it back. **Revert** on its progress row is the way.
* **Begin AI:** one change across many shifts, and copying a period, each run as a step of their own. A change works out its own set from a period or a date range plus filters, up to 2,000 shifts in a call. A copy carries 300 blocks, takes every block type, and skips anything already at the target date. Editing shifts one at a time takes 300 in a call.
* **Often confused with:** **Duplicate all**, which clones each shift where it already sits and passes over one still running, where a paste puts the whole set on the day and row under the pointer.

## Next

<Columns cols={2}>
  <Card title="Publishing" icon="eye" href="/for-managers/schedule/publishing">
    How a draft week reaches the team.
  </Card>

  <Card title="Templates and rotas" icon="calendar-week" href="/for-managers/schedule/templates-and-rotas">
    The answer when you copy the same week every week.
  </Card>
</Columns>

## Still need help?

<Columns cols={2}>
  <Card title="Contact support" icon="envelope" href="mailto:support@heybegin.eu">
    Email the Begin team and we'll get back to you.
  </Card>

  <Card title="Ask Begin AI" icon="comment-dots" href="?assistant=open">
    Open the AI assistant and get instant answers based on these docs.
  </Card>
</Columns>
