Linking Greenhouse as a source
This source is currently in alpha. The interface and available tables may change.
Enter your Greenhouse Harvest API key to automatically pull your Greenhouse recruiting data into the PostHog data warehouse.
Adding a data source
- Go to the sources tab of the data pipeline section in PostHog.
- Click + New source and then click Link next to Greenhouse.
- In Greenhouse, create a Harvest API key under Configure → Dev Center → API Credential Management. Grant the key read (
GET) access to the resources you want to sync — for example Candidates, Applications, Jobs, Job Posts, Offers, Scorecards, Scheduled Interviews, and Users. - Back in PostHog, paste the key into the
API keyfield and click Next. - Select the tables you want to sync, set the sync method and frequency, then click Import.
Once the syncs are complete, you can start using Greenhouse data in PostHog.
Available tables
| Table | Description | Sync method |
|---|---|---|
candidates | Candidates in your Greenhouse account | Incremental |
applications | Candidate applications | Incremental |
jobs | Jobs | Incremental |
job_posts | Job posts | Incremental |
offers | Offers | Incremental |
scorecards | Interview scorecards | Incremental |
scheduled_interviews | Scheduled interviews | Incremental |
users | Greenhouse users | Incremental |
departments | Departments | Full refresh |
offices | Offices | Full refresh |
sources | Candidate sources | Full refresh |
rejection_reasons | Rejection reasons | Full refresh |
close_reasons | Close reasons | Full refresh |
Incremental tables sync only new or updated records on each run. Full refresh tables reload all data on each sync.
Configuration
| Option | Type | Required |
|---|---|---|
API key | password | Yes |
Supported tables
| Table | Description | Sync method | Incremental field | Primary key |
|---|---|---|---|---|
candidates | A person who has applied to or been sourced for a job in Greenhouse. | Incremental, Full refresh | updated_at, created_at | — |
applications | A candidate's application to a specific job in Greenhouse. | Incremental, Full refresh | last_activity_at, created_at | — |
jobs | A job (role) being recruited for in Greenhouse. | Incremental, Full refresh | updated_at, created_at | — |
job_posts | A public posting of a job to a job board or career site. | Incremental, Full refresh | updated_at, created_at | — |
offers | An offer extended to a candidate for a job in Greenhouse. | Incremental, Full refresh | updated_at, created_at | — |
scorecards | An interviewer's evaluation of a candidate for an interview. | Incremental, Full refresh | updated_at, created_at | — |
scheduled_interviews | A scheduled interview event for a candidate's application. | Incremental, Full refresh | updated_at, created_at | — |
users | A Greenhouse user account (recruiter, hiring manager, or admin). | Incremental, Full refresh | updated_at, created_at | — |
departments | A department that jobs can be assigned to in Greenhouse. | Full refresh | — | — |
offices | An office location that jobs can be assigned to in Greenhouse. | Full refresh | — | — |
sources | A source that candidates can be attributed to (e.g. a job board or referral). | Full refresh | — | — |
rejection_reasons | A configurable reason an application can be rejected for. | Full refresh | — | — |
close_reasons | A configurable reason a job opening can be closed for. | Full refresh | — | — |