The Scenario
Your company is closing for three days over the December holidays. The HR manager needs to submit an approved time-off request for every employee for those three days — it is a company holiday, and BambooHR needs a record so payroll processes correctly.
There are 150 employees. The HR manager has all their employee IDs in a Google Sheet from last month's payroll run.
She assumed BambooHR would have a bulk submission option. It does not.
The bad version:
- Open BambooHR, navigate to Time Off, click "Request Time Off on Behalf of Employee."
- Select the first employee from the dropdown, pick the time-off type, set the start date, set the end date, submit.
- Navigate back, select the second employee, repeat.
- At employee 40, realize you accidentally submitted one request with the wrong time-off type. Now you need to find it, cancel it, and resubmit.
- At employee 80, wonder how many of the 70 remaining you can finish before HR closes for the holiday itself.
This is not an HR task. It is a data entry task, and it is going to take most of a day.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Google Sheet. It reads each employee ID from the sheet and submits a BambooHR time-off request for each one in a single operation.
For each employee ID in column A of this sheet, submit a BambooHR time-off request for the start date in cell E1, end date in cell E2, and time-off type ID in cell E3; write 'submitted' or any error in column B.
SheetXAI reads every ID in column A, submits a time-off request per employee using the dates and type specified in E1-E3, and writes the result into column B. When it finishes, you can see at a glance which submissions succeeded and which need attention.
What You Get
- One BambooHR time-off request submitted per employee ID in column A.
- Start date, end date, and time-off type read from cells E1, E2, and E3 — easy to update for future closures.
- Column B shows "submitted" for successes and a descriptive error for any failure.
- The sheet is the submission log — you can share it with HR as confirmation before the holiday.
What If the Data Is Not Quite Ready
Some employees should not receive the holiday request — part-time or contractors
The sheet has all employees but the closure only applies to full-time staff.
For each employee ID in column A where column C is 'Full-Time', submit a BambooHR time-off request for the dates in cells E1 and E2 with type ID in E3. Write 'submitted' in column D or any error.
Each employee needs a different time-off type depending on their location
US employees use one time-off type ID, UK employees use another. Column B has the country.
For each row in this sheet, submit a BambooHR time-off request for the employee ID in column A. If column B is 'US', use time-off type ID 5. If column B is 'UK', use time-off type ID 12. Dates are in cells E1 and E2. Write the result in column C.
You want to check that no requests already exist before submitting
A few employees may have already submitted personal time off for those dates, and you don't want duplicate requests.
For each employee ID in column A, check whether a BambooHR time-off request already exists for the dates in E1 and E2. If one exists, write 'exists' in column B and skip. If not, submit the company holiday request and write 'submitted.'
Full filtered-submit with conflict check and audit log in one prompt
For each row in column A where column C is 'Full-Time': check if a time-off request already exists in BambooHR for that employee for the dates in E1 and E2. If one exists, write 'exists - skipped' in column D. If not, submit a time-off request with the type in column B (US employees use type 5, UK use type 12). Write 'submitted' or any error in column D and the current timestamp in column E.
The pattern: the guard check, the conditional type selection, and the submission all happen in one instruction.
Try It
Get the 7-day free trial of SheetXAI and open your employee ID sheet, then ask it to submit the company holiday time-off for everyone at once. You can also pull the time-off balances afterward to confirm the closure days were applied correctly.
