> For the complete documentation index, see [llms.txt](https://docs.siit.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.siit.io/integrations/hris/bamboohr.md).

# BambooHR

<figure><img src="/files/M5UXjCVWhNdmdSeZcK6b" alt=""><figcaption></figcaption></figure>

Bamboo's directory, lifecycle dates, and reporting structure drive Day-1 onboarding, offboarding, and access workflows, with custom fields mapped to your org structure.

### What you get

* **Live People directory** — every BambooHR employee appears in Siit with their role, manager, department, location, employment type, and lifecycle dates.
* **Lifecycle triggers** — Start date, End date, Probation period, Work anniversary, and Birthday all become workflow triggers in Siit.
* **Manager resolution** — the BambooHR reporting structure is synced, so workflows can auto‑select the requester's manager for approvals.
* **Custom fields** — extend the sync with the BambooHR fields specific to your organization (cost center, legal entity, job level, etc.).
* **Pre‑hires and future start dates** — new hires appear in Siit before Day 1, so you can launch pre‑boarding workflows ahead of time.

### What syncs from BambooHR

| Category        | Fields                                                                                   |
| --------------- | ---------------------------------------------------------------------------------------- |
| Identity        | First name, last name, work email, employee ID                                           |
| Role            | Job title, department, division                                                          |
| Org structure   | Manager, office location, legal entity                                                   |
| Employment      | Employment status (active, inactive), employment type (full‑time, part‑time, contractor) |
| Lifecycle dates | Hire date, termination date, date of birth                                               |
| Custom          | Any custom field you select during mapping                                               |

Work email is used as the canonical identifier to match BambooHR employees with their accounts in your IdP and other connected tools.

### Before you connect

* You'll need a BambooHR **admin account** or an API key from an admin‑level user.
* Make sure work email is populated for every active employee in BambooHR.
* Decide whether BambooHR or your IdP should be the source of truth for overlapping fields (job title, department). You can configure this after the connection in **Settings → People → Fields**.

### Connect BambooHR

1. In Siit, go to **Settings → Integrations**.
2. Find **BambooHR** in the HRIS section and click **Connect**.
3. Enter your BambooHR **subdomain** (the `yourcompany` part of `yourcompany.bamboohr.com`).
4. Generate a BambooHR API key:
   * In BambooHR, click your profile avatar (top right) → **API Keys**.
   * Click **Add New Key**, give it a name like "Siit integration", and copy the generated key.
5. Paste the API key into Siit and click **Authorize**.
6. Siit runs an initial import and shows you a preview of the people found.
7. Review the field mapping and click **Finish setup**.

> **Tip** — API keys inherit the permissions of the BambooHR user who created them. Use an admin user so all employees and fields are available to Siit.

### After the connection

* **Check your People list** — go to **People** in Siit and confirm the directory looks right.
* **Set source of truth** — in **Settings → People → Fields**, pick BambooHR as the source for HR‑owned fields (department, manager, location, employment type, start/end dates).
* **Map custom fields** — in **Settings → Integrations → BambooHR**, add any custom BambooHR field you want available in Siit.
* **Build your first workflow** — try a Day‑1 onboarding workflow triggered on Start date.

### Sync frequency

BambooHR data refreshes automatically every few hours. You can also trigger a manual sync from **Settings → Integrations → BambooHR → Sync now**.

### Common workflows

**Day‑1 onboarding.** *Trigger: Start date. Actions: create accounts in IdP, assign baseline apps by department, ship equipment, DM the hiring manager.*

**Offboarding on termination.** *Trigger: End date. Actions: revoke sessions, remove app access, create equipment pickup request, notify manager.*

**Probation review.** *Trigger: Probation period. Actions: send review checklist to manager, open a request if no feedback after 3 days.*

### Troubleshooting

**Some employees are missing from Siit.** Check their status in BambooHR — only active employees and future hires are synced by default. If you need inactive employees in Siit, adjust the import filter in **Settings → Integrations → BambooHR**.

**Manager field is empty for some people.** In BambooHR, confirm that the employee has a reporting manager assigned in their Job Information tab. Siit reads from that field.

**Custom field didn't appear.** Make sure the custom field is enabled for API access in BambooHR, then re‑run the mapping step in Siit.

**"Invalid credentials" when connecting.** The API key has likely expired or been revoked. Generate a new one in BambooHR and update it in Siit.

>
