Import BambooHR Data to Google Sheets
In this guide, we’ll walk through how to pull data from the BambooHR API directly into Google Sheets, using the API Connector add-on for Sheets. We’ll first get an API key from BambooHR, and then set up a request to pull in human resources data to your spreadsheet.
- Before You Begin
- Part 1: Get your BambooHR API Key
- Part 2: Create your API Request URL
- Part 3: Pull BambooHR API Data into Sheets
- Part 4: More Example API URLs
BEFORE YOU BEGIN
Click here to install the API Connector add-on from the Google Marketplace.
PART 1: GET YOUR BAMBOOHR API KEY
- While logged into your BambooHR account, click your Profile icon > API keys from the header bar.
- Click the Add New Key button
- Give your API key a name and click Generate Key.
- One last step: Because the BambooHR API requires Basic Authentication, we need to encode our authentication info to base 64. You can do this by entering your your credentials in the format
YOUR_API_KEY:xinto this form (i.e. your API key, then a colon, and then an ‘x’).
The encoding script runs in your browser, and none of your credentials are seen or stored by this site.
(If you have any problems with the above, please check this post for some alternate methods of encoding your credentials).
PART 2: CREATE YOUR BAMBOOHR API REQUEST URL
We’ll follow the documentation to access a list of job postings.
- API root: https://api.bamboohr.com/api/gateway.php/
- Endpoint: /YOUR_DOMAIN/v1/applicant_tracking/jobs
Just substitute in your own domain name. Putting it together, we get the full API Request URL:
PART 3: PULL BAMBOOHR API DATA INTO SHEETS
We can now enter our values into API Connector and import BambooHR API data into Google Sheets.
- Open up Google Sheets and click Add-ons > API Connector > Open.
- In the Create tab, enter the Request URL we just created
- Under Headers, enter Authorization as your Key, and Basic YOUR_BASE64_ENCODED_STRING as the value:
Authorization Basic YOUR_BASE64_ENCODED_STRING
Replace YOUR_BASE64_ENCODED_STRING with the base64-encoded string you created in part 1.
- Create a new tab. Name it and click “Set current” to use that tab as your data destination.
- Name your request and click Run. A moment later you’ll see a list of your BambooHR job postings in your Google Sheet:
PART 4: MORE EXAMPLE API URLS
You can check the documentation for the full list of available API requests, but if you just want to jump in, you can play around with the URLs you enter in the API URL path field. Try the following (one at a time), substituting in your own domain name: