Time-Off Request
Provides a single, structured flow for submitting, approving, and tracking paid time off - improving visibility for employees, managers, and HR.
- Detects PTO requests submitted through the employee's preferred communication channel
- Pulls leave type, dates, and employee context directly from the HRIS
- Routes the request to the appropriate approver
- Updates the HRIS automatically once the request is approved
- Adds the approved time off to the relevant calendars
- Sends the manager a reminder ahead of the employee's PTO
What Time-Off Request does
Time-Off Request lets employees check their leave balance and file a PTO, vacation, or sick-leave request directly in chat, without opening a ticket in their HR system by hand. Harmony's AI Helpdesk agent resolves which HR system the employee is enrolled in, shows their live policy balances where supported, and files the request - routing it through a configurable approval step before it lands in HiBob, BambooHR, or Sage HR. It replaces the manual "email HR and wait" pattern with a single, self-service conversation.
Who Time-Off Request Is For
Any employee whose company uses HiBob, BambooHR, or Sage HR, requesting time off for themselves.
Filing time off usually means leaving chat to open a ticket or log in to a separate HR portal, without an easy way to see current balances first. This agent keeps the whole thing - balance check, policy selection, dates, and filing - inside the conversation the employee is already having.
How Time-Off Request Works
An employee asks Harmony's AI Helpdesk agent to take time off, book vacation, report sick leave, or check their remaining balance ("I want to take next Friday off," "how much PTO do I have left").
- Resolve HR system
Calls
get_time_off_optionsto find which enabled HR system(s) the employee exists in; with exactly one option it proceeds automatically, with more than one it asks the employee to choose. - Show live balances
For HiBob and Sage HR (the providers that support live policy listing), calls
list_my_time_off_policiesand presents the employee's assigned policies with current balances; unlimited policies are shown as unlimited, never flagged as low. - Collect request details
Gathers start/end dates and, only where the HR instance allows it, half-day portions for the first/last day; collects a written reason only when the tenant's configuration requires justification for that policy.
- Confirm and submit
Shows a summary and requires explicit confirmation before calling
submit_time_off_request, which opens a Service Desk ticket carrying the request as structured metadata. The agent never promises whether the request will be approved. - Workflow takeover
The
time-off-requestworkflow triggers on that ticket, checks the employee's balance in the resolved HR system, and - if the tenant's config requires approval for that policy and isn't within the auto-approve window - sends an approval request to the employee's manager or configured approvers/groups before filing. - File in the HR system
Once approved (or if no approval is required), the workflow submits the request directly to HiBob, BambooHR, or Sage HR using each provider's own submit call.
The ticket resolves with a confirmation that the request was filed in the employee's HR system, closes with the specific rejection reason if the HR system declines it (e.g. insufficient balance, overlapping request), or stays open with a decline notice if the approval was denied or timed out.
Capabilities
- Resolves the right HR system automatically - Detects which of HiBob, BambooHR, or Sage HR the employee is active in, asking only when they exist in more than one.
- Shows live policy balances - For HiBob and Sage HR, pulls the employee's actual assigned policies and current balances before they request time off, so they're not guessing.
- Strictly self-service - Refuses to view balances or file requests for anyone other than the person asking, even "on behalf of" a colleague or report.
- Collects only what each provider needs - Half-day portions only where the HR instance allows them (BambooHR files whole days only); a written reason only when the tenant's config requires justification, for specific policies or all of them.
- Configurable approval routing - Approval can be required per instance, scoped to specific policies, and routed to the employee's manager, named approvers, or IdP groups (Okta, Microsoft Entra, Google Workspace, JumpCloud) with an any/all strategy.
- Auto-approves short requests - Tenants can configure a maximum number of days under which requests skip approval entirely.
- Graceful fallback with no approvers - If nobody can be found to approve (e.g. the requester has no manager), the request defers to the HR system's own approval flow instead of failing.
- Transparent failure handling - If the HR system rejects the filed request, the exact rejection is posted back on the ticket rather than silently failing.
- Never invents balances or policy names - Only ever states values returned by the connected HR system's live data.
Main use cases
Quick vacation request with instant balance check - An employee asks to take off the following Monday. The agent resolves their HiBob instance, shows their PTO balance as of that date, confirms the request, and files it - if the company auto-approves short requests, it's filed immediately with no manager involvement.
Sick leave needing no policy lookup - An employee reports they're out sick today. Since BambooHR doesn't support live policy listing, the agent asks which policy to file under, confirms the dates, and submits - the ticket resolves once BambooHR accepts the filing.
Longer leave requiring manager approval - An employee requests two weeks off. The tenant's configuration requires approval for requests over the auto-approve threshold, so after the agent files the request, the workflow sends an approval prompt to the employee's manager; the request is only submitted to the HR system once approved, and the employee sees a decline notice if it's rejected or times out after 3 days.
Unsupported or disconnected HR system - An employee asks to take time off, but their company's HRIS integration isn't one of the three supported providers (or the specific integration instance is disabled). The agent tells them Harmony can't file the request and to use their HR system directly, while an internal note on the ticket tells IT/HR exactly why it was skipped.
Integrations
| Integration | Role in the agent flow |
|---|---|
| HiBob | Live policy/balance listing and time-off submission; supports half-day portions |
| BambooHR | Time-off balance lookup and submission; whole-day requests only |
| Sage HR | Live policy/balance listing and time-off submission; supports half-day portions |
| Harmony Service Desk | Carries the request as ticket metadata, receives all status updates through resolution or closure |
| Identity providers - Okta, Microsoft Entra, Google Workspace, JumpCloud | Resolved only when a tenant configures a group as an approver for time-off requests |
| Workflows engine ("time-off-request" V3 workflow, v1.7) | Orchestrates balance checks, approval routing, and HRIS submission after the ticket is created |
FAQ
It's a capability inside Harmony's single AI Helpdesk agent (a toolkit called time_off) that files the request as a ticket, paired with a separate "time-off-request" workflow (v1.7) that takes over once the ticket is created to check balances, route approval, and file the request in the HR system.
Meet more Agents