Approve a timesheet
Approve one pending timesheet.
POST https://cotlet.dev/api/v1/deputy/timesheets/{timesheet_id}/approve
write Confirm
Approves one pending timesheet, which then follows Deputy's payment workflow. Needs the Location Manager or System Administrator role for the pay part. A timesheet with no end time is refused; fix it in Deputy first. Cotlet has no unapprove tool, because Deputy unapproves only in its web app. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| timesheet_id integer required | integer | Timesheet ID from list_timesheets. |
Request
curl -X POST https://cotlet.dev/api/v1/deputy/timesheets/4821/approve \
-H "Authorization: Bearer $COTLET_API_KEY" result = client.call("deputy", "approve_timesheet", {"timesheet_id":4821}) const result = await cotlet.call('deputy', 'approve_timesheet', {"timesheet_id":4821}); cotlet call deputy approve_timesheet --data '{"timesheet_id":4821}' Example response
{
"timesheet_id": 4821,
"employee": "Ana Lopez",
"date": "2026-10-12",
"start": "09:00",
"end": "17:30",
"break_minutes": 30,
"hours": 8,
"status": "approved"
}