Deputy automation · runs daily
Approve Deputy timesheets in bulk by your own rule
Every morning the pending timesheets of last week pile up on the Timesheets tab, and a Location Manager checks each start, end and break against the roster before clicking Approve.
Cotlet does it in your own Deputy account with list_timesheets, get_timesheet, approve_timesheet and discard_timesheet, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can Deputy do this on its own?
Deputy offers bulk approval in the web app and a timesheet approve endpoint in its REST API (checked 20 Oct 2026). Both approve what you pick, not by a rule such as "matches the roster". Deputy has no official MCP server, so an agent needs your own code and token.
How you do it in Deputy today
- On the Deputy website, a manager opens the Timesheets tab and chooses Approve Timesheets to view, edit and approve the team's timesheets.
- A pending timesheet with a start and an end time is approved with the Approve button on its right. One without an end time is opened in the detailed view, edited, then approved.
- For many at once, the manager ticks checkboxes by timesheet, team member or date, and a bulk action bar appears at the bottom. A System Administrator must first switch on the approve-all setting in Business Settings.
- A team member who never clocked in leaves an unsubmitted timesheet. The manager uses Import scheduled details to complete it, or Discard Time Sheet if the shift was not worked.
- Deputy recommends approving in date order, oldest first, so overtime and shift loading calculate correctly, which is easy to get wrong in a long list.
How to approve Deputy timesheets in bulk by your own rule
List pending timesheets at Harbour Cafe, oldest first. Approve the ones that match their roster within 15 minutes, discard shifts nobody worked, and leave the rest for me with a reason. - 01
Read the queue oldest first
Your agent calls list_timesheets with status pending and a location, and keeps the date order Deputy recommends. The account must be a Location Manager or System Administrator for the pay part; a Supervisor sees time only.
- 02
Compare with the roster
For each timesheet, get_timesheet returns the start, end and break next to the scheduled shift. The agent applies your rule from the prompt, for example "within 15 minutes of the roster", and quotes the numbers it used.
- 03
Sort into three piles
Matches go to approve. A timesheet with no clock-in and no worked shift goes to discard. Anything with a missing end time, a long overrun or a manual edit stays pending with a one-line reason.
- 04
Approve, then discard
approve_timesheet runs for the matches in date order, so overtime is calculated correctly even if you stop halfway. discard_timesheet runs only for shifts nobody worked. Both wait for your OK per call until you switch confirmation off for them.
- 05
Check before each call
Right before approving, the agent reads the timesheet again. One that another manager approved or edited in the meantime is logged as already handled and skipped.
What you get back
Pending timesheets at Harbour Cafe: 14
Approved 10 (all within 15 minutes of the roster)
Discarded 1 (Sam Okafor, Oct 11: shift not worked)
Left for you 3:
- Ana Lopez, Oct 12: no end time
- Tom Becker, Oct 12: 45 minutes over
Already handled by another manager: 0 Other ways to ask
- Every evening, approve timesheets of staff who clocked on and off within 10 minutes of their shift.
- Show me pending timesheets with a break shorter than the roster, and approve nothing.
- Approve everything at Harbour Cafe for last week except timesheets with a comment.
What Deputy allows, and what to know first
- Deputy lets Location Managers and System Administrators amend and approve both the time and the pay part of a timesheet; Supervisors handle only the time part and cannot see pay.
- Deputy's mobile app cannot bulk approve absent timesheets, where an employee missed a scheduled shift.
- Deputy unapproves a timesheet only in the web app, so Cotlet has no unapprove tool; an approval by mistake is fixed there.
- Deputy's bulk approval needs a System Administrator to switch on the approve-all setting in Business Settings; one-by-one approval does not.
approve_timesheet and discard_timesheet ask for your OK by default. To run it daily without you, switch confirmation off for those tools in your dashboard.
Sources: Deputy Help: Approving your team's timesheets · Deputy Help: Approving timesheets · Deputy Help: What if a team member forgets to clock on or off · Deputy Developer: Timesheet Management Calls
Call approve_timesheet from a script
curl -X POST https://cotlet.dev/api/v1/deputy/timesheets/4821/approve \
-H "Authorization: Bearer $COTLET_API_KEY" {
"timesheet_id": 4821,
"employee": "Ana Lopez",
"date": "2026-10-12",
"start": "09:00",
"end": "17:30",
"break_minutes": 30,
"hours": 8,
"status": "approved"
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is deputy_write → approve_timesheet. Example data.
Schedule it in n8n, Make, Zapier or cronDeputy tools this automation uses
| Tool | Parameters |
|---|---|
| list_timesheets | location_id, status, date_from, date_to, employee_id |
| get_timesheet | timesheet_id |
| approve_timesheet | timesheet_id |
| discard_timesheet | timesheet_id |
Frequently asked questions
Is it safe to connect Deputy to Cotlet?
Yes. You sign in to Deputy yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Deputy 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 Deputy.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Deputy.