BambooHR

Connect your AI agents to BambooHR.

Available Tools

get_employee

Get a specific employee by ID with optional field selection. Returns employee profile data including personal info, job details, and contact information.

get_employee_directory

Get the employee directory containing all employees with basic information. Use this for a quick overview of all employees in the organization.

add_employee

Create a new employee record in BambooHR. Requires at minimum first and last name. Returns the created employee data with assigned ID.

update_employee

Update an existing employee’s information. Only provided fields will be updated; omitted fields remain unchanged.

get_employee_files

List all files associated with an employee, organized by category. Returns file metadata including names, sizes, and categories.

list_goals

List goals for an employee with optional status filtering. Returns goal details including progress and due dates.

get_goal

Get a specific goal by ID with full details including description, progress, and comments.

create_goal

Create a new goal for an employee. Set title, description, due date, and optional sharing with other employees.

update_goal

Update an existing goal. Modify title, description, due date, progress percentage, or sharing settings.

close_goal

Close/complete a goal. Optionally add a completion comment to document the outcome.

reopen_goal

Reopen a previously closed goal. Allows continued work and tracking on the goal.

add_goal_comment

Add a comment to a goal. Use for progress updates, feedback, or documentation.

get_fields

Get all available employee field definitions. Returns field IDs, names, and types that can be used in reports and employee queries.

get_lists

Get all available list field values (e.g., departments, locations, employment statuses). Useful for populating dropdowns or validating input.

get_users

Get all BambooHR user accounts with their associated employee IDs and login status. Useful for user management and access auditing.

get_company_report

Run a predefined company report by ID. Supports optional filtering and multiple output formats (JSON, CSV, etc.).

run_custom_report

Run a custom employee report with specified fields. Select which employee fields to include in the report output.

get_whos_out

Get a list of employees who are out (on time off) for a given date range. Defaults to today if no dates provided.

list_time_off_requests

List time off requests with optional filters for date range, employee, status, action needed, and type.

get_time_off_policies

Get the time off policies assigned to a specific employee, including accrual rates and balances.

get_time_off_types

Get all available time off types configured in the BambooHR account (e.g., Vacation, Sick, Personal).

estimate_time_off_balance

Calculate an employee’s estimated time off balance for a future date, accounting for accruals and scheduled time off.

add_time_off_request

Create a new time off request for an employee. Requires time off type, start date, and end date.

get_timesheet_entries

Get timesheet entries for an employee within a date range. Returns detailed time tracking records with hours, tasks, and projects.

add_timesheet_entry

Add a new timesheet entry for an employee. Records hours worked on a specific date with optional task/project association.

edit_timesheet_entry

Edit an existing timesheet entry. Updates hours and optionally task, project, or notes.

delete_timesheet_entry

Delete a timesheet entry by ID. Permanently removes the time tracking record.

clock_in

Record a clock-in time for an employee. Optionally specify start time and timezone; defaults to current time.

clock_out

Record a clock-out time for an employee. Optionally specify end time and timezone; defaults to current time.

get_daily_entries

Get daily time tracking summaries for an employee within a date range. Returns aggregated hours per day.

list_training_categories

Get all training categories/types defined in the BambooHR account. Returns category names, requirements, and renewal periods.

list_employee_trainings

Get all training records for a specific employee. Returns completed trainings with dates, hours, and costs.

add_employee_training

Add a training record for an employee. Records completion of a training type with optional cost, hours, and instructor info.

update_employee_training

Update an existing training record. Modify completion date, cost, hours, instructor, or notes.

delete_employee_training

Delete a training record by ID. Permanently removes the training from the employee’s record.