# A shift swap request tracker in SharePoint

> For the full documentation index, see https://250highstreet.com/llms.txt

> Stop shift swaps getting lost in texts. Build a SharePoint list for swap requests with a status, a manager decision and views for waiting and upcoming swaps.

Short answer: use one SharePoint list named Swap requests: who asked, which shift, who takes it, the manager, and a status of 1 Requested, 2 Approved or 3 Declined. The swap counts only when the manager sets Approved in the list. A text between two coworkers is only a plan.

A swap request is also called a shift trade or a shift change request, and this one list covers all three. Exact names may differ on your screen. Microsoft's help pages are linked at the end.

## Why swaps get lost in texts

Someone cannot work Saturday. They text a coworker. The coworker says yes. Neither tells the manager, or one of them does, in a message that is buried by Monday. On Saturday the wrong person is on the schedule, or no one is.

The same things go wrong each time:

- The manager sees the swap too late, or not at all.
- Two people each think the other one told the manager.
- A swap is agreed twice, with two different people.
- Nobody can say later who approved what.
- The manager answers "ok" in a chat thread that no one can find.

The fix is small. One list, one status, one place to look.

## How this differs from other guides

This guide is about people trading shifts that already exist. For a general approval flow, see "[Approvals lost in email: how to stop chasing sign-offs](/guides/approvals-lost-in-email/)". For leave and days off, see "[Time-off requests in email: one list, one approver, one calendar](/guides/time-off-requests-in-email/)". For a volunteer schedule with open slots, see "[A volunteer schedule for a church or club in SharePoint](/guides/church-volunteer-schedule-sharepoint/)". To move off a spreadsheet, see "[Replace a spreadsheet tracker with a SharePoint list](/guides/replace-spreadsheet-with-sharepoint-list/)".

This guide does not replace your scheduling tool. It records the swap and the decision. Your schedule still lives where it lives now.

## The list

Create one list named Swap requests. One way to start is with these columns:

- Title: a short name for the request, such as "Sat 9 AM, Front desk". You can rename it to "Request" in the column settings.
- Requested by: a Person column. The person who wants to give up the shift.
- Shift date: a Date and time column. Microsoft says you can show only the date or both the date and time.
- Shift: Single line of text, such as "Front desk, 9 AM to 5 PM".
- Swap with: a Person column. The person who will take the shift.
- Status: a Choice column with three choices: 1 Requested, 2 Approved and 3 Declined. Our advice, not a Microsoft rule: the number prefix keeps the values easy to tell apart.
- Manager: a Person column. The person who decides.
- Decision date: a Date and time column.

Keep it small. Add a column only when someone needs it. Microsoft's page on creating a column explains how to add each type. It is in the sources.

## Form fields and a filled-in example

If you want a form-style entry, these are the fields. Each is one column in the list above.

- Request (Title), Requested by, Shift date, Shift, Swap with, Status, Manager, Decision date.

A filled-in swap, as one row: Row 7, Request "Sat 9 AM, Front desk", Requested by Person A, Shift date 10/17, Shift "Front desk, 9 AM to 5 PM", Swap with Person B, Status 1 Requested, Manager Person C, Decision date blank. After the manager approves it, Status reads 2 Approved and Decision date is filled in.

## Swap, trade and change request: one list for all three

Our advice, not a Microsoft rule: use the words your team already uses in the list name. A shift swap (two people exchange shifts), a shift trade (one person gives a shift to another) and a shift change request (a shift moves for any reason) all fit the columns above. For a trade, leave Swap with as the person taking the shift. For a change that has no second person, leave Swap with empty and say the reason in the Request title.

## Step 1. Create the list

1.  Open Microsoft Lists, or open your team's SharePoint site.
2.  Select New, then List, then Blank list.
3.  Name it Swap requests.
4.  Rename the Title column to Request if you like.
5.  Add the columns from the list above, one at a time. For Status, type the choices as 1 Requested, 2 Approved and 3 Declined, one per line.
6.  Set the default value of Status to 1 Requested, so a new row starts in the right place.

## Step 2. Enter a few real swaps

Before you share the list, add three recent swaps. Use real ones from last month. This shows you quickly whether a column is missing or confusing. If you keep asking "where do I put this?", add one column. If a column stays empty, remove it.

## Step 3. Add the views people use

Three views to start with. To add a view, use the view menu in the list, then Save view as. Microsoft's page on creating a view lists the steps.

1.  Waiting for approval. Filter Status to 1 Requested. Sort by Shift date, soonest first, so the swap that is closest is on top.
2.  My requests. Filter "Requested by" to \[Me\]. A \[Me\] filter works only in the classic view editor. In the list, select the view menu, then Edit current view, then scroll to Filters and choose Show items only when the following is true. Microsoft's page on filtering a view says you must use the classic view editor for the \[Me\] and \[Today\] keywords.
3.  Upcoming swaps. Filter Status to 2 Approved, and filter Shift date to is greater than or equal to \[Today\]. The \[Today\] keyword also needs the classic view editor (Edit current view, then Filters). Sort by Shift date, soonest first.

A calculated column cannot use today's date, because SharePoint blocks \[Today\] in formulas. Use a view filter for "upcoming", as above, instead of a column.

Views are not security. A view only changes what is shown. Anyone with access to the list can open another view and see every row. If swaps should be private, set who has access to the list. For more, see "[Let each person see only their own items in a SharePoint list](/guides/people-see-only-their-own-items-sharepoint-list/)".

## Step 4. Decide who can approve

This part is our advice, not a Microsoft rule. Pick one person, or one small group, who can approve swaps, and write it down. Three things to settle first:

- Who approves? One way to start: the manager of the person who asked.
- What if the approver is out? Name a backup.
- Can people swap with anyone, or only within a role? Say so in one sentence at the top of the list.

If people do not know the rules, they will make their own, and the texts will start again. For what happens when an approver is away, see "[Approvals stuck when the approver is out](/guides/approval-stuck-approver-out/)".

## Step 5. Start without a flow

You do not need a flow to start. Run the list with people changing the Status themselves.

1.  The person who wants to swap adds a row. They set Status to 1 Requested and pick the person who will take the shift.
2.  The manager opens the "Waiting for approval" view each morning.
3.  The manager changes Status to 2 Approved or 3 Declined and fills in Decision date.
4.  The person who asked checks "My requests" to see the answer.

If this works, you may not need anything more. If the manager forgets to check, or the answer is slow, add the flow below.

## Step 6. Add an approval flow (optional)

Power Automate has an approvals feature. Microsoft says that when you submit an approval in a flow, approvers are notified and can review and act on the request. Microsoft's approvals page names approving vacation time requests as one use. A swap fits the same shape. These steps are adapted to this list:

1.  Sign in to Power Automate. Select Create, then Automated cloud flow.
2.  Give the flow a name. For the trigger, choose When an item is created for SharePoint. Pick your site and the Swap requests list.
3.  Add the action Start and wait for an approval from the Approvals connector.
4.  Pick an Approval type. Microsoft lists these types: Approve/Reject - Everyone must approve, Approve/Reject - First to respond, Custom Responses - Wait for all responses, Custom Responses - Wait for one response, and Sequential approval. For one manager, Approve/Reject - First to respond fits: Microsoft says approval or rejection by any approver completes the request. If a swap needs two people to sign off, Approve/Reject - Everyone must approve waits for each approver, and Microsoft says it stops at a single rejection.
5.  Fill in Title, Assigned to and Details. Assigned to takes the email address of the approver. Put the shift date, the shift and the two names in Details.
6.  Add a Condition: Outcome is equal to Approve. Microsoft's connector page says the responses "Approve" and "Reject" are case-sensitive.
7.  In the Yes branch, add the SharePoint action Update item. Set Status to 2 Approved. Add Send an email (V2) from Office 365 Outlook to tell the person who asked.
8.  In the No branch, add Update item and set Status to 3 Declined. Add an email to the person who asked.

In Update item, Site Address, List Name and Id are required. Title is also required while the Title column is required, so set it to the Title from the trigger. Set Decision date to the current date. The value you type for Status must match the choice exactly, including the number. Use 2 Approved, not Approved.

Microsoft says approvers "can respond directly from an Outlook email, a Microsoft Teams adaptive card, or the Power Automate action center if they have a Power Automate license or an Office 365 or a Dynamics 365 license with built-in Power Automate capabilities." If an approver says they never saw the request, see "[Teams approvals not showing up or not notifying](/guides/teams-approvals-not-showing-up/)".

Approvals need a Microsoft Dataverse database. Microsoft says that if you use the default environment, the Dataverse database is created for you automatically. In a non-default environment, the system provisions a database, and the user who runs the first approval flow must have an administrator role in that environment. Microsoft also says any license that grants access to Power Automate and standard connectors is enough to create approval flows. If this is not you, ask your admin.

Test the flow with one real swap before you tell the team. Confirm the manager saw it, Status moved, the asker heard back, and a declined swap reads 3 Declined.

## Step 7. Answer every texted swap with the link

A texted swap is a plan, not a swap. When a coworker texts you about Saturday, reply with the link to the list and ask them to add the row. Before you post next week's schedule, open Upcoming swaps and match it.

## What to avoid

- Treating a text as an approval. The list is the record.
- Using free text for Status. Use the Choice column with the numbered choices.
- Adding extra columns on day one. Each extra column is something people must fill in.
- Assuming a view keeps rows private. It does not.
- Building the flow before the plain list works.
- Letting two swaps for the same shift sit in the list at once. Check the "Waiting for approval" view before you approve.

## Honest limits

A list does not stop two people from agreeing on a swap and never entering it. It also does not check your schedule, hours or rules for you. If your workplace has rules about who may work which shift, the approver still has to check them. This guide records requests and decisions. It does not decide them.

## When to get help

You can build all of this yourself in Microsoft 365. If you would rather have it built and tested for your team, I do that. A tracker like this is a fixed price: \$5,000 for one, built in 2 weeks. See "[What a SharePoint tracker costs to build](/guides/what-a-sharepoint-tracker-costs/)". Bring one example of the problem to a free call.

I am Al Davies. I run 250 High Street LLC and build SharePoint trackers and Power Automate flows for operations teams. I work remotely. The first call is free, and I will not try to sell you anything.

See trackers I built: [Tools I built](/portfolio/)

## FAQ

### Is there a shift swap request form template?

This guide lists the fields to build as list columns, plus a filled-in example row, so you can set it up in Microsoft Lists or SharePoint.

### How do I set up a shift trade request form?

Use the same Swap requests list, with the person taking the shift in Swap with and the manager deciding through the Status column.

### What goes on a shift change request form?

Who is asking, the shift date and time, the reason in the Request title, and the manager who decides.

### What format should a shift change request use?

One row per request with the same columns every time: Request, Requested by, Shift date, Shift, Swap with, Status, Manager and Decision date.

### Which approval type should the flow use?

For one manager, Approve/Reject - First to respond, because Microsoft says any one approver's answer completes the request.

## Sources

- [Microsoft Learn, SharePoint connector reference](https://learn.microsoft.com/en-us/connectors/sharepointonline/)
- [Microsoft Learn, Standard approvals connector reference](https://learn.microsoft.com/en-us/connectors/approvals/)
- [Microsoft Learn, Use data operations in Power Automate](https://learn.microsoft.com/en-us/power-automate/data-operations)
- [Microsoft Learn, Get started with Power Automate approvals](https://learn.microsoft.com/en-us/power-automate/get-started-approvals)
- [Microsoft Support, Use filtering to modify a SharePoint view](https://support.microsoft.com/en-us/office/use-filtering-to-modify-a-sharepoint-view-3d8efc52-0808-4731-8f9b-3dfaeacea3d4)
- [Microsoft Support, Create a column in a list or library](https://support.microsoft.com/en-us/office/create-a-column-in-a-list-or-library-2b0361ae-1bd3-41a3-8329-269e5f81cfa2)
- [Microsoft Support, Create, change, or delete a view of a list or library](https://support.microsoft.com/en-us/sharepoint/lists/data-and-lists/create-change-or-delete-a-view-of-a-list-or-library)

## Related guides

- [Requests lost in a shared inbox: add an owner and a status](/guides/requests-lost-in-shared-inbox/)
- [A property maintenance request tracker in SharePoint](/guides/property-maintenance-request-tracker/)
- [Purchase requests stuck waiting for approval: how to see them and move them](/guides/purchase-requests-stuck-waiting-for-approval/)

Source: https://250highstreet.com/guides/shift-swap-request-tracker/
