# 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.

>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.siit.io/integrations/hris/bamboohr.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
