Request time off
hr_request_leaveAsk for time off for someone, from start to end (default: one day), with a half day on the first and/or last day if wanted. Only working days count, minus the holidays of everyone and of their location; leave that crosses into a new leave year counts in each. Refused when it overlaps their pending or approved leave, has no working days, falls outside their employment or they have left, or when a tracked balance (after pending requests) can't take it, unless allow_negative: true (the reply then says how far below 0 it goes). It waits for hr_decide_leave unless approve: true decides at once. Returns the request_id and the balance after it. Costs $0.01 per call; nothing if it fails.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"person": "<person>",
"leave_type": "<leave_type>",
"start": "<start>"
},
"name": "hr_request_leave"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | The last day off, YYYY-MM-DD. Default: start. | |
| note | No | ||
| start | Yes | YYYY-MM-DD | |
| person | Yes | The person_id, or their work email. | |
| approve | No | ||
| half_end | No | The last day is a half day. | |
| half_start | No | The first day is a half day. | |
| leave_type | Yes | A leave type by name, e.g. "Vacation". | |
| allow_negative | No |