This article will outline our BambooHR integration for user provisioning.

Connecting Eletive to BambooHR will allow for automatic provisioning of your employee data.

Data mapping

Standard Fields

The standard fields when synching users between Eletive and BambooHR are shown in the table below and these will be synced automatically. The language will be set to English by default the first time the user is created. After that, the user will be able to change the language in the tool and it will not be overwritten as that would be annoying for the user if the user prefers to change the language.

Field - Eletive Field - BambooHR
First name First name
Last name Surname
Email Email
External Id Internal ID


Note: Please note that all standard fields, First Name, Surname and Internal ID are mandatory to make the user syncable. Users without First Name, Surname or Internal IDin Bamboo HR will NOT be synced


To sync attributes, first, create the proper attributes in Eletive, and then connect BambooHR and perform the attribute mapping. Other fields in BambooHR that can be interesting to include can be Job Title, Location, Department, and Employment status. Custom fields in BambooHR can also be used. If needed, you can read more about adding attributes and the different types of attributes in Eletive here.  

To build the organizational structure in Eletive, our automatic hierarchies feature can be used. BambooHR contains a field called Manager, this can be mapped to a Users attribute in Eletive to get the organization hierarchy, as the manager field in BambooHR contains a unique ID.

Note: BambooHR also contains a field called "Reports to", this can unfortunately not be used when mapping to a Users attribute in Eletive since this field only contains the name of the manager, which is not a unique value. 


Example mappings:

Attribute - Eletive Field - BambooHR
Manager (Needs to be created) Manager
Date of Birth (Standard Attribute) Birth Date
Employment Date (Standard Attribute) Hire Date
Gender (Standard Attribute) Gender


After the proper attributes have been created in Eletive, proceed with this guide.


  1. Create a none-user account
    1. Create a user called "Eletive Integration", and assign the user admin permissions.
    2. Rest the user's password so an email is sent. Proceed to step 2 

      This account's responsibility will be to create the API key, it should not be used for anything else. This is done to avoid removal of the API key in situations where the owner loses his/hers admin rights in BambooHR
  2. Sign in to BambooHR (with the none-user account) and navigate to API Keys
    1. See the BambooHR documentation for more information about their API
  3. Press the "Add New Key" button
  4. Name it like you want for example Eletive and press "Generate Key"
  5. Copy the key and save it in a safe place and press done. Remember that an API key is like a password so it needs to be handled securely.


  1. Sign in to Eletive and navigate to Settings/Integrations/BambooHR
  2. Add your organization domain at BambooHR, for example, if your domain is: , then you should input "eletive"
  3. Add your API key from BambooHR
  4. Press connect
  5. Change settings
    1. Select what users will be synced based on "Employment Stauts"
    2. Map attributes. 
  6. Once finished
    1. Press "Save & Test" to put the integration in Test Mode. This way you can view the results/effects of turning on the integration without having to enable it. 
    2. or Press "Save & Enable" to enable the integration 

Sync intervals and information

The sync will be performed once every hour. Only users with a hire date today or older will be synced to avoid sending surveys to future employees.

Users created by the BambooHR integration will have their External Id prefixed with "bamboohr-" followed by the Internal ID.