BambooHR
BambooHR is a all-in-one HR platform that provides employee database service and reporting, payroll, time, and benefits, hiring and onboarding solutions.
Data integration: Skyvia supports importing data to and from BambooHR, exporting BambooHR data to CSV files, replicating BambooHR data to relational databases, and synchronizing BambooHR data with other cloud apps and relational databases.
Backup: Skyvia Backup does not support BambooHR.
Query: Skyvia Query supports BambooHR.
Establishing Connection
To create a connection to BambooHR, specify the Company Domain and authorize using your credentials or an API Key.
Getting Credentials
Company Domain
Company domain is located at the address bar when you are logged in to BambooHR. The text just before the .bamboohr.com is your domain.
API Key
To locate an API Key, go to BambooHR and perform the following steps:
- Go to BambooHR and click the user icon.
-
Click API Keys.
- Click Add New Key.
-
Name the API Key and click Generate Key.
The API Key is available only once while you create it. To access it again copy it and keep in a safe place.
Creating API Key Connection
To connect to BambooHR using the API Key, do the following.
- Specify the Company Domain.
- Select the API Key in the Authentication box.
- Enter the obtained API Key into the corresponding box in the Connection Editor.
Creating OAuth Connection
To connect to BambooHR using the OAuth 2.0, perform the following steps:
- Specify the Company Domain.
- Select the OAuth 2.0 in the Authentication box.
-
Click Sign-in with BambooHR.
- Enter your email and password, and click Log In.
Additional Connection Parameters
Suppress Extended Requests
BambooHR API returns only part of the fields for some objects when querying multiple records. Skyvia performs additional extended requests to query values of missing fields. Skyvia performs such API requests for each record of such object. However, this can decrease performance and significantly increase the number of API calls used.
The additional fields are the following:
OBJECT | FIELD |
---|---|
EmployeeFiles | Content |
CompanyFiles | Contect |
EmployeePhotos | Photo |
Applications | ApplicantPhoneNumber, ApplicantAddressAddressLine1, ApplicantAddressAddressLine2, ApplicantAddressCity, ApplicantAddressState, ApplicantAddressZipcode, ApplicantAddressCountry, ApplicantLinkedinUrl, ApplicantTwitterUsername, ApplicantWebsiteUrl, ApplicantAvailableStartDate, ApplicantEducationInstitution, ApplicantEducationLevelId, ApplicantEducationLevelLabel, JobHiringLeadEmployeeId, JobHiringLeadFirstName, JobHiringLeadLastName, JobHiringLeadJobTitleId, JobHiringLeadJobTitleLabel, ResumeFileId, CoverLetterFileId, MovedTo, MovedFrom, AlsoConsideredForCount, DuplicateApplicationCount, ReferredBy, DesiredSalary, CommentCount, EmailCount, AttachmentCount, EventCount, QuestionsAndAnswers, Attachments, ApplicationReferences. |
To reduce the number of API calls, you can select the Suppress Extended Requests checkbox.
Connector Specifics
Object Peculiarities
EmployeeDependents
When you select data from this object, the Country and State fields return country and state names respectively. However, if you import data to these fields, you have to specify the country and state ISO codes, not names.
Filtering Specifics
BambooHR API supports the following native filters:
Object | Fields and Operators |
---|---|
Employees | Id (= ), UpdatedDate (>= , > ) |
EmployeePhotos | Id (= ) |
EmployeeFiles | Id (= ) |
TimeOffRequests | Id (= ), EmployeeId (= ), Status (= , In), TimeOffTypeId (= , In) |
EmployeeTimeOffPolicies | EmployeeId (= ) |
EstimateFutureTimeOffBalances | EmployeeId (= ) |
EmployeeDependents | Id (= ) |
EmployeeGoalComments | EmployeeId (= ), GoalId (= ) |
AlignableGoalOptions | EmployeeId (= ) |
Applications | StatusId (= ), JobId (= ), CreatedDate (>= , > ) |
EmployeeTrainings | EmployeeId (= ) |
EmployeeProjects | EmployeeId (= ) |
TimesheetEntries | EmployeeId, Id, (= ), Date (>= , > ) |
JobInfo, EmploymentStatus, Compensation, Dependents, Contacts, EmergencyContacts, Earnings, Bonus, Commission, EmployeeVisas, EmployeeEducation, EmployeePassports, EmployeeDriverLicenses, EmployeeCertifications, EmployeeStockOptions, EmployeeAssets, EmployeeCreditCards, EmployeeCovidTests, EmployeeCovidVaccinations, EmployeeCovidVaccinationExemptions, EmployeeCovidExposures, EmployeeEquityGrants, EmployeeProjectPayRates, CustomAssets | EmployeeId (= ) |
Use these filters to improve performance and save API calls. You can use filters with other fields or operators, but it may increase API call usage.
Nested Objects
The following fields store complex structured data in JSON format.
Object | Field | Nested Object |
---|---|---|
TimeOffRequests | Dates | TimeOffRequestDatesType |
BenefitDeductionTypes | SubTypes | BenefitSubType |
EmployeeGoals | SharedWithEmployeeIds | IdType |
Milestones | GoalMilestoneType | |
Applications | QuestionsAndAnswers | ApplicationsQuestionsAndAnswersType |
EmployeeProjects | Tasks | EmployeeProjectTasksType |
You can use our Nested Objects mapping feature in the Import integrations to insert or update the nested values in such fields. Select the Separate Tables for the Unwind Nested Objects option when using the new replication runtime to replicate the nested data into separate tables.
Custom Objects / Custom Fields
Only the Employees object supports custom fields.
Incremental Replication and Synchronization
Skyvia supports Replication with Incremental Updates for the Employees, EmployeeFiles, CompanyFiles, and EmployeeGoalComments.
Skyvia supports Synchronization for the objects which support INSERT and UPDATE operations and contain the CreatedDate or UpdatedDate field.
DML Operations Support
Operation | Object |
---|---|
INSERT, UPDATE, DELETE | CompanyFiles, EmployeeFiles, EmployeeGoals, EmployeeGoalComments, EmployeeTrainings, TrainingTypes, TrainingCategories |
INSERT, UPDATE | Employees, EmployeeDependents, EmployeePhotos, TimeOffRequests |
INSERT | EmployeeFileCategories, CompanyFileCategories |
Supported Actions
Skyvia supports all the common actions for BambooHR.