CharlieHR automation · runs daily
Approve CharlieHR time off requests by your own rules
Holiday requests pile up on the Home page, and every one needs a look at the person's balance and at who else is off before you click approve.
Cotlet does it in your own CharlieHR account with list_time_off_requests, get_time_off_allowance, get_whos_working, approve_time_off_request and deny_time_off_request, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can CharlieHR do this on its own?
CharlieHR has auto-approval, which an Admin or Super Admin turns on or off per employee in the profile (Time tab > Approvers > Who can Approve and Why) (checked 20 Oct 2026). It approves everything for that person, with no rule on balance or cover. The API reads leave requests and has no approve or deny action.
How you do it in CharlieHR today
- Open Home in the side navigation. Pending time off is listed on the right of the page.
- Click view on a request to open the approval panel and expand its sections to see the dates and the approval options.
- To check cover, open Time > Who's Working, or Time > Calendar for the month, which shows absences and working locations.
- To check the balance, open the person's profile and the Time tab, which shows their holiday allowance.
- Choose Approve, write a message to the team member if you like, and click Submit Decision.
- Repeat for each request. A line manager gets an email when a direct report books leave, so the queue refills all week.
How to approve CharlieHR time off requests by your own rules
Go through pending time off requests in CharlieHR. Approve holiday that fits the person's remaining allowance and leaves at least two people working each day, deny nothing, and list the rest for me with a one-line reason. - 01
Read the pending queue
Your agent calls list_time_off_requests with status pending. It sees the requests your role is allowed to approve: everyone for an Admin or Super Admin, direct reports for a Line Manager, the team for a Team Lead.
- 02
Check the balance
For each request, get_time_off_allowance returns allowance, used, pending and remaining days. A request longer than the remaining days is not approved; it goes on your list.
- 03
Check cover
get_whos_working runs for the first and last day of the request. If fewer people are working than your rule asks for on either day, the request is left for you with the date that fails.
- 04
Approve what passes
approve_time_off_request runs for each request that passed both checks and sends your note to the team member. Each call asks for your OK until you switch confirmation off for the tool.
- 05
Deny only on your word
deny_time_off_request runs only when your prompt names a reason to deny, for example a restricted date. Without one the agent denies nothing and lists the request as open.
What you get back
Pending time off: 3
Approved 2:
- Sam Rivera, Holiday, 2 to 4 Nov, 3 days (17 days left after)
- Leo Fischer, Holiday, 9 Nov, 1 day
Left for you 1:
- Priya Nair, Holiday, 16 to 20 Nov, 5 days: only one other person working on 18 Nov Other ways to ask
- Every morning at 8, approve requests of 2 days or less and list longer ones for me.
- Show me the pending queue with remaining allowance and who else is off each day, but approve nothing.
- Approve requests from my direct reports only and leave company-wide ones to the other admins.
- Deny requests that start on a restricted date and tell each person to pick other dates.
What CharlieHR allows, and what to know first
- CharlieHR lets Super Admins, Admins, Team Leads, Line Managers and custom time off approvers approve requests. Payroll Admins and plain team members cannot.
- A Line Manager can approve only one level down: their direct reports, not the reports of those reports, unless they are also an Admin or Super Admin.
- When an Admin sets a custom approver for a person, only that approver is notified and sees the request on the dashboard. Line managers and admins can still approve from the person's profile.
- Time off booked on a restricted date is not auto-approved and is left to the approver to decide.
- Sick days are approved automatically and notify the line manager, so this job never needs to handle them.
approve_time_off_request and deny_time_off_request ask for your OK by default. To run it daily without you, switch confirmation off for those tools in your dashboard.
Sources: CharlieHR Help: Approving your employee's time off · CharlieHR Help: Who can approve time off · CharlieHR Help: Who's working and from where · CharlieHR Help: Add restricted leave dates
Call approve_time_off_request from a script
curl -X POST https://cotlet.dev/api/v1/charliehr/requests/tor_4f81c2/time-off-request/approve \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"note":"Enjoy the break."}' {
"request_id": "tor_4f81c2",
"member": "Sam Rivera",
"type": "Holiday",
"start_date": "2026-11-02",
"end_date": "2026-11-04",
"days": 3,
"status": "approved",
"note_sent": "Enjoy the break.",
"remaining_days": 17
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is charliehr_write → approve_time_off_request. Example data.
Schedule it in n8n, Make, Zapier or cronCharlieHR tools this automation uses
| Tool | Parameters |
|---|---|
| list_time_off_requests | status, member_id, from, to |
| get_time_off_allowance | member_id, leave_year |
| get_whos_working | date |
| approve_time_off_request | request_id, note |
| deny_time_off_request | request_id, note |
Frequently asked questions
Can my agent approve my own leave?
Only if CharlieHR lets your role do so. Admins and Super Admins can approve company-wide, and the agent works with the same permissions as the account you sign in with.
Is it safe to connect CharlieHR to Cotlet?
Yes. You sign in to CharlieHR yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get CharlieHR 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 CharlieHR.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with CharlieHR.