Back to BambooHR in Google Sheets
SheetXAI logo
BambooHR logo
BambooHR · Google Sheets Guide

Bulk Create BambooHR ATS Candidates From a Google Sheet

2026-05-15
5 min read

The Scenario

You are the talent acquisition specialist who just got back from a career fair. You collected 60 candidates — paper forms, business cards, a sign-in sheet. A colleague digitized them into an Excel sheet on the flight home: first name, last name, email, phone, and the job opening ID they were interested in.

It is Tuesday morning. The recruiter who owns the open roles wants to see these candidates in BambooHR ATS by end of day so the team can start first-round outreach.

The bad version:

  • Open BambooHR ATS, navigate to the first job opening, click "Add Candidate," fill in the name, email, phone, and save.
  • Go to the second job opening for the next candidate, repeat.
  • Twenty minutes in, realize you navigated to the wrong job for candidates 8 through 11.
  • Delete four records, recreate them correctly, and resume.

Sixty candidates at that pace is most of your Tuesday — and these are warm leads from a career fair, not cold prospects. The window to follow up is short.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent that lives inside your Google Sheet. It reads each row, matches it to the right BambooHR job opening by ID, and creates the ATS candidate record directly through the API.

Create a BambooHR ATS candidate application for each row in this sheet using column A as first name, column B as last name, column C as email, and column D as the job opening ID; write the candidate ID into column E.

SheetXAI processes every row, creates a candidate record in the specified job opening, and writes the resulting candidate ID back into column E — so you have confirmation in the sheet without switching to BambooHR.

What You Get

  • One BambooHR ATS candidate record created per row, linked to the correct job opening.
  • The new candidate ID written into column E for each successful row.
  • Any failure (invalid job ID, duplicate email) surfaces an error message in column E rather than a silent skip.
  • The sheet becomes your sourcing audit trail.

What If the Data Is Not Quite Ready

Several rows are missing a job opening ID because the candidate was interested in multiple roles

Some candidates circled two job titles on the form, but the sheet only has one ID column.

For each row where column D has multiple job IDs separated by a comma, create one BambooHR ATS application per job ID for that candidate and write all returned candidate IDs into column E.

Some emails appear more than once in the sheet

A few candidates filled out the form twice.

Before creating BambooHR ATS records, check column C for duplicate email addresses. Write 'duplicate' in column F for any repeated email, then create records only for the first occurrence of each email. Write the candidate ID into column E.

Phone numbers are in inconsistent formats

Some are formatted as (555) 123-4567, others as 555.123.4567, and some have no formatting at all.

Before creating the BambooHR ATS records, normalize all phone numbers in column D to the format +1XXXXXXXXXX and then create the candidate records.

Full dedup, normalize, and create in one pass

The sheet is raw from the career fair digitization — inconsistent phones, some duplicates, a handful of missing emails where the candidate only left a LinkedIn.

Check column C for duplicate emails — mark duplicates in column F and skip them. Normalize phone numbers in column D to E.164 format. Skip rows where column C is empty. For all remaining rows, create BambooHR ATS candidate records using columns A through E, write the candidate ID into column G and any error into column H.

The pattern: the data quality pass and the API write happen in a single instruction so you're not running a cleanup step and a creation step separately.

Try It

Get the 7-day free trial of SheetXAI and open your sourcing sheet from the career fair, then ask it to create the BambooHR ATS records. You can also export the full ATS pipeline after creation to confirm all 60 candidates landed in the right job openings.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more