Skip to main content

BambooHR Component

Manage Employees in BambooHR

Component key: bamboohr

Description

BambooHR produces human resources software. BambooHR's services include an applicant tracking system and an employee benefits tracker.

Connections

Bamboo API Key

Bamboo HR API keys can be used for testing an integration, but for production integrations, please use OAuth 2.0.

To generate an API key, log in to Bamboo HR, click your user profile image on the upper-right and then click API Keys. Click Add New Key, and take note of the API key that is generated - it will be a ~40 character alphanumeric string.

Triggers

Webhook

Receive and validate webhook requests from BambooHR for webhooks you configure. | key: bamboohrTrigger


Actions

Add Employee

Add a new employee | key: addEmployee


Add Table Row

Adds a row to the specified table for an employee | key: addEmployeeTableRow


Create Company File Category

Create a new company file category (folder) | key: addCompanyFileCategory


Create Employee File Category

Create a new employee file category (folder) | key: addEmployeeFileCategory


Create Webhook

Create a new webhook | key: createWebhook


Delete Company File

Delete an company file | key: deleteCompanyFile


Delete Employee File

Delete an employee file | key: deleteEmployeeFile


Delete Instance Webhooks

Delete all BambooHR webhooks that point to a flow in this instance | key: deleteInstanceWebhooks


Delete Webhook

Delete a webhook by ID | key: deleteWebhookById


Get an Employee's Table

Get a specific table associated with an employee | key: getEmployeeTable


Get Company File

Get an company file | key: getCompanyFile


Get Employee

Get an Employee | key: getEmployee

Output Example Payload

{
"data": {
"id": "5",
"address1": "335 S 560 W",
"address2": null,
"age": "41",
"bestEmail": "aadams@efficientoffice.com",
"birthday": "07-28",
"city": "Lindon",
"country": "United States",
"dateOfBirth": "1981-07-28",
"department": "Human Resources",
"division": "Europe",
"employeeNumber": "2",
"employmentHistoryStatus": "Full-Time",
"ethnicity": "Two or More Races",
"exempt": "Exempt",
"firstName": "Ashley",
"fullName1": "Ashley Adams",
"fullName2": "Adams, Ashley",
"fullName3": "Adams, Ashley",
"fullName4": "Adams, Ashley",
"fullName5": "Ashley Adams",
"displayName": "Ashley Adams",
"gender": "Female",
"hireDate": "2022-02-20",
"originalHireDate": "0000-00-00",
"jobTitle": "HR Administrator",
"lastChanged": "2022-08-17T20:35:30+00:00",
"lastName": "Adams",
"location": "London, UK",
"maritalStatus": "Married",
"middleName": null,
"mobilePhone": "+44 207 555 6671",
"payRate": "50000.00 GBP",
"payRateEffectiveDate": "2022-02-20",
"payType": "Salary",
"paidPer": "Year",
"paySchedule": "Twice a month",
"payFrequency": "Twice a month",
"ssn": "545-66-7890",
"state": "UT",
"stateCode": "UT",
"status": "Active",
"supervisor": "Caldwell, Jennifer",
"supervisorEmail": "jcaldwell@efficientoffice.com",
"terminationDate": "0000-00-00",
"workEmail": "aadams@efficientoffice.com",
"workPhone": "+44 207 555 4730",
"zipcode": "84042"
}
}

Get Employee File

Get an employee file | key: getEmployeeFile


Get Time Off Requests

Gets Employee Time Off Requests for a given date range. | key: getTimeOffRequests

Output Example Payload

{
"data": [
{
"id": "1342",
"employeeId": "4",
"status": {
"lastChanged": "2022-04-10",
"lastChangedByUserId": "2369",
"status": "approved"
},
"name": "Charlotte Abbott",
"start": "2021-12-26",
"end": "2021-12-28",
"created": "2022-04-09",
"type": {
"id": "78",
"name": "Vacation",
"icon": "palm-trees"
},
"amount": {
"unit": "hours",
"amount": "24"
},
"actions": {
"view": true,
"edit": true,
"cancel": false,
"approve": false,
"deny": false,
"bypass": false
},
"dates": {
"2021-12-26": "24"
},
"notes": {
"manager": "Home sick with the flu."
}
}
]
}

List Company Files

List all company categories and files | key: listCompanyFiles

Output Example Payload

{
"data": {
"categories": [
{
"id": 179,
"canUploadFiles": "yes",
"name": "BambooHR",
"files": [
{
"id": 220,
"name": "4 Ways the BambooHR ATS Improves the Hiring Process",
"originalFileName": "4 Ways the BambooHR ATS Improves the Hiring Process.pdf",
"size": "855128",
"dateCreated": "2022-10-22T22:30:07+0000",
"createdBy": "Prismatic Developer",
"shareWithEmployees": "no",
"canRenameFile": "yes",
"canDeleteFile": "yes"
},
{
"id": 223,
"name": "5 Payroll Pain Points Solved by TRAXPayroll",
"originalFileName": "5 Payroll Pain Points.pdf",
"size": "523971",
"dateCreated": "2022-10-22T22:50:24+0000",
"createdBy": "Prismatic Developer",
"shareWithEmployees": "no",
"canRenameFile": "yes",
"canDeleteFile": "yes"
}
]
},
{
"id": 175,
"canUploadFiles": "yes",
"name": "New Hire Forms",
"files": [
{
"id": 164,
"name": "Australia Standard Choice Form.pdf",
"originalFileName": "Australia Standard Choice Form.pdf",
"size": "323487",
"dateCreated": "2022-07-01T15:15:33+0000",
"createdBy": null,
"shareWithEmployees": "no",
"canRenameFile": "yes",
"canDeleteFile": "yes"
}
]
}
]
}
}

List Employee Files

List all employee categories and files | key: listEmployeeFiles

Output Example Payload

{
"data": {
"employee": {
"id": 4
},
"categories": [
{
"id": 12,
"name": "Signed Documents",
"canRenameCategory": "yes",
"canDeleteCategory": "yes",
"canUploadFiles": "yes",
"displayIfEmpty": "yes",
"files": [
{
"id": 4,
"name": "Company Handbook.pdf",
"originalFileName": "Company Handbook.pdf",
"size": 2807480,
"dateCreated": "2022-07-04T20:45:51+0000",
"createdBy": "Charlotte Abbott",
"shareWithEmployee": "yes",
"canRenameFile": "yes",
"canDeleteFile": "yes",
"canChangeShareWithEmployeeFieldValue": "yes"
},
{
"id": 10,
"name": "I-9 (2017).pdf",
"originalFileName": "I-9 (2017).pdf",
"size": 2750869,
"dateCreated": "2022-07-04T21:25:11+0000",
"createdBy": "Charlotte Abbott",
"shareWithEmployee": "yes",
"canRenameFile": "yes",
"canDeleteFile": "yes",
"canChangeShareWithEmployeeFieldValue": "yes"
}
]
},
{
"id": 10,
"name": "Workflow Attachments",
"canRenameCategory": "yes",
"canDeleteCategory": "yes",
"canUploadFiles": "yes",
"displayIfEmpty": "yes",
"files": []
}
]
}
}

List Employees

Get the employee directory | key: getEmployeeDirectory

Output Example Payload

{
"data": {
"fields": [
{
"id": "displayName",
"type": "text",
"name": "Display Name"
},
{
"id": "firstName",
"type": "text",
"name": "First Name"
},
{
"id": "lastName",
"type": "text",
"name": "Last Name"
},
{
"id": "gender",
"type": "text",
"name": "Gender"
},
{
"id": "jobTitle",
"type": "list",
"name": "Job Title"
},
{
"id": "workPhone",
"type": "text",
"name": "Work Phone"
},
{
"id": "workPhoneExtension",
"type": "text",
"name": "Work Extension"
},
{
"id": "skypeUsername",
"type": "text",
"name": "Skype Username"
},
{
"id": "facebook",
"type": "text",
"name": "Facebook URL"
}
],
"employees": [
{
"id": 123,
"displayName": "John Doe",
"firstName": "John",
"lastName": "Doe",
"gender": "Male",
"jobTitle": "Customer Service Representative",
"workPhone": "555-555-5555",
"workPhoneExtension": null,
"skypeUsername": "JohnDoe",
"facebook": "JohnDoeFacebook"
}
]
}
}

List Tabular Fields (Tables)

List all tables and their fields in the account | key: getTabularFields

Output Example Payload

{
"data": [
{
"alias": "jobInfo",
"fields": [
{
"id": 4028,
"name": "Job Information: Date",
"alias": "date",
"type": "date"
},
{
"id": 18,
"name": "Location",
"alias": "location",
"type": "list"
},
{
"id": 4,
"name": "Department",
"alias": "department",
"type": "list"
},
{
"id": 1355,
"name": "Division",
"alias": "division",
"type": "list"
},
{
"id": 17,
"name": "Job Title",
"alias": "jobTitle",
"type": "list"
},
{
"id": 91,
"name": "Reporting to",
"alias": "reportsTo",
"type": "employee"
}
]
}
]
}

List Webhooks

Get a list of existing webhooks | key: listWebhooks


List Who's Out

Get a list of all employees currently taking time off | key: whosOut

Output Example Payload

{
"data": [
{
"id": 1493,
"type": "timeOff",
"employeeId": 17,
"name": "Dorothy Chou",
"start": "2022-08-17",
"end": "2022-08-18"
}
]
}

Raw Request

Send raw HTTP request to BambooHR | key: rawRequest


Update Employee

Update an existing employee | key: updateEmployee


Update Employee Table Row

Updates a specific row in an Employee Table | key: updateEmployeeTableRow


Upload Company File

Upload a new company file | key: uploadCompanyFile


Upload Employee File

Upload a new employee file | key: uploadEmployeeFile