Shiftbase automation · runs daily
Approve Shiftbase shift exchange requests
An employee offers a shift, a colleague takes it, and then the swap sits in the manager's Requests until someone approves it.
Cotlet does it in your own Shiftbase account with list_exchange_requests, list_shifts, approve_exchange_request and decline_exchange_request, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can Shiftbase do this on its own?
Shiftbase handles exchanges in the app, with the Approve exchanges permission for the approver (checked 22 Oct 2026). The Public API does not list exchange approvals among its examples, and there is no MCP server.
How you do it in Shiftbase today
- The employee opens the Schedule tab, hovers over the shift, clicks the magnifying glass and then Request exchange.
- The employee picks colleagues to invite and may add a description, and the invited colleagues receive a message.
- The first colleague to accept gets the shift, because the rule is first come, first served.
- The manager opens the Profile menu in the blue bar, chooses Requests, and accepts or rejects the exchange with the check mark.
- Until that approval the exchange is not final, and the shift stays with the original owner.
How to approve Shiftbase shift exchange requests
List the shift exchanges in Harbor Cafe that a colleague has accepted. Approve the ones where both people are allowed to work the shift and nobody goes over 40 hours that week, and list the rest. - 01
List accepted exchanges
list_exchange_requests returns exchanges that wait for approval, with the shift, the original owner and the colleague who accepted. Offers nobody accepted yet are skipped.
- 02
Read both weeks
list_shifts reads the schedule of the week for both employees, so the agent sees the hours each would have after the swap.
- 03
Apply your rules
The agent checks the limit in your prompt, such as weekly hours, and whether the colleague already has a shift at the same time. A swap that fails goes on your list with the reason.
- 04
Approve or decline
approve_exchange_request moves the shift to the new owner in the schedule. decline_exchange_request keeps it with the original owner. Both reach employees and wait for your OK by default.
- 05
Confirm the schedule
The agent reads the shift again and reports the new owner, so the schedule matches what you approved.
What you get back
Accepted exchanges waiting: 4
Approved 3:
- Sat 25 Oct, 16:00-23:00: Lena Ortiz to Sam Okafor (Sam at 31 hours that week)
Declined 1:
- Sun 26 Oct: Sam Okafor would reach 44 hours Other ways to ask
- Approve only swaps between people on the same team.
- Every evening, list swaps still waiting and who has to act.
- Decline any swap requested less than 24 hours before the shift starts.
What Shiftbase allows, and what to know first
- Shiftbase gives employees the Request exchanges permission by default, and the Planner has Approve exchanges by default.
- With the Approve incoming exchange permission, mutual exchanges are approved without a manager.
- An exchange is not final until a manager or a user with approval rights approves it.
- A shift offered for exchange shows two arrows in the schedule.
approve_exchange_request and decline_exchange_request ask for your OK by default. To run it daily without you, switch confirmation off for those tools in your dashboard.
Sources: Shiftbase Help: Exchange requests · Shiftbase Help: How do I exchange my shift · Shiftbase Help: Full API access
Call approve_exchange_request from a script
curl -X POST https://cotlet.dev/api/v1/shiftbase/requests/2290/exchange-request/approve \
-H "Authorization: Bearer $COTLET_API_KEY" {
"request_id": "2290",
"status": "approved",
"shift": {
"id": "90421",
"date": "2026-10-25",
"start": "16:00",
"end": "23:00",
"employee": "Sam Okafor"
}
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is shiftbase_write → approve_exchange_request. Example data.
Schedule it in n8n, Make, Zapier or cronShiftbase tools this automation uses
| Tool | Parameters |
|---|---|
| list_exchange_requests | department_id |
| list_shifts | from, to, department_id, employee_id |
| approve_exchange_request | request_id |
| decline_exchange_request | request_id |
Frequently asked questions
Is it safe to connect Shiftbase to Cotlet?
Yes. You sign in to Shiftbase yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Shiftbase once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.
Give your agent access to Shiftbase.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Shiftbase.