BambooHR integration

The BambooHR integration allows you to automatically pull over approved time off for your employees.




Main Takeaways:

Setting up

BambooHR uses API keys that are tied to the users permissions, meaning that any API key will be able to access whatever the user that created it can access. For this reason, if you would like to restrict Forecast to only access what is actually needed, you would need to create a user specifically for this. Follow the steps under Setting up an integration user and log in as that user before following the Setting up steps here.

  • To set up the integration, navigate to your BambooHR instance.
  • Click your initials in the top-right of the screen and click API Keys.
  • Click the Add New Key and name it something recognizable, such as Forecast Key. Copy the key before closing the window.

ezgif.com-gif-maker (28)-2

  • Go to the BambooHR integration page in your Forecast account.
  • Paste your API key into the appropriate field and write your BambooHR domain in the other textbox. The BambooHR domain is the first part of your BambooHR url, ie. https://DOMAIN.bamboohr.com/
  • Click the Activate button and you are now good to go!

ezgif.com-gif-maker (29)-2

Before approved time off can be brought over, you need to link your Forecast users to your BambooHR employees and your Forecast idle time to your BambooHR time off types.

Setting up an integration user

To set up a minimal access level for your integration user, click the cog in the top right of you BambooHR instance, and click the "Access Levels" menu point on the left-hand side.

  • Go to your BambooHR instance
  • Click the cog in the top right
  • Select Access Levels 

ezgif.com-gif-maker (30)-2

  • Click the + icon next to the Levels header and select Custom Access Level
  • Name the access level something recognizable eg. "Forecast Integration"
  • Don't tick off any boxes on the What this Access Level Can Do screen. Click Next Step

ezgif.com-gif-maker (31)-3

  • Select See About other Employees. Under Personal and Time Off click the All Fields are set to No Access dropdown in on the right-hand side and select View Only.

ezgif.com-gif-maker (32)-3

  • Select See About Themselves. Tick off Yes, Allow Access and in the dropdown select Full Access and tick off the Can Request Time Off for box and select All Current And Future Time Off Types.

ezgif.com-gif-maker (33)-2

  • Click Save & Finish
  • You can now click Add Employees for this access level to create the integration user.

Linking/importing users

To import users, navigate to the People admin page and click the Import BambooHR users button in the top-right. In the window is a list of all the people that have not been imported or linked yet. Select the ones you want to be created in Forecast and click the Create button.

ezgif.com-gif-maker (34)-2

To link users, navigate to the profile page of the person you want to link and scroll to the BambooHR section. In this section you can select an unlinked BambooHR person from the dropdown to link this user to it. Note that the link does not update any data in either BambooHR or in Forecast.

Linking/importing idle time

To import idle time types, navigate to the Time management page and click the Import BambooHR time off types button. In the opened window tick off the time off types you want to synchronize time for in Forecast and click the Create button.

ezgif.com-gif-maker (35)-2

To link time off types, select the time off type in the dropdown next to the corresponding idle time type.

Synchronizing time off requests

Every hour, the integration pulls over all approved time off requests from BambooHR into Forecast as time off allocations (along with corresponding time registrations). If a time off request is no longer approved, it is removed from Forecast again. If the time off type is unlinked from Forecast (or is deleted in BambooHR), the related allocations are deleted. If a person is unlinked from BambooHR, the allocations are not removed.

Note: only time off requests created after the integration is enabled are synced over to Forecast. This is to avoid duplicate allocations and time registrations.

It is assumed that your company will handle all time off through BambooHR if this integration is enabled, so you are not able to create allocations to idle time in Forecast after enabling it. In addition, the allocations synchronized from BambooHR cannot be modified from Forecast, while the allocations are still linked.

Time approval and Time Locking

If you are using either of these, the allocations created by the BambooHR integration in the past, will not have attached time registrations created.