HR integration guide
Greenhouse + UbiGrowth workflows
Greenhouse is an applicant tracking system that owns candidates, interview process, and hiring stage data. This guide covers the records that matter, how the connection should be scoped, and what the first bounded workflow should be.
Introduction
Make Greenhouse part of the workflow, not another silo.
Validate connector availability for your workspace
This guide covers how a team designs a HR workflow around Greenhouse with UbiGrowth: which records stay authoritative, how the connection should be scoped, what the first bounded workflow should be, and how to tell whether it worked.
The records that matter are Candidate, Application, Job, Job Post, Interview, Scorecard, and Offer. Greenhouse separates Candidate from Application, and one candidate can hold several applications across jobs. Pipeline metrics computed per candidate and per application give different, both-legitimate answers.
Greenhouse is not currently on UbiVibe's verified connector list. This page is an implementation design reference: use it to specify the workflow, then validate whether the connection is available and correctly scoped for your workspace before you make it a dependency. The verified UbiVibe connections today are Salesforce, HubSpot, Gmail, Google Drive, Slack, and GitHub.
The platform layer is the usual destination for this connection, because the value shows up as governed context and execution shared across more than one team.
Why teams evaluate this connection
Integrations create value when they remove operating friction.
The first design decision is not which API endpoint to call; it is which system owns the record, what event should trigger work, who owns the exception path, and what successful completion means.
HR systems hold the most sensitive data in the company and are usually the least connected, for good reason. Anything reading Greenhouse is reading personal data, and the default answer to a casual integration request should be no.
That caution has a cost, though. People-operations work is full of repetitive coordination — onboarding checklists, access requests, candidate scheduling, document collection — that stays manual because the systems that could automate it are the ones nobody wants to connect broadly.
You're likely here because
- Onboarding and offboarding run on a manual checklist
- Candidate or employee coordination consumes disproportionate time
- People data cannot be connected without a privacy review nobody has scheduled
Record model
What a Greenhouse integration actually reads and writes.
Integration design starts from the objects the system really exposes, not from a generic connector diagram. These are Greenhouse's.
Identity and matching
Greenhouse separates Candidate from Application, and one candidate can hold several applications across jobs. Pipeline metrics computed per candidate and per application give different, both-legitimate answers.
Start here
Read Applications sitting at an interview stage past the team's agreed limit with no Scorecard submitted, and route the reminder to the named interviewer.
What this will not do
It will not speed up hiring by itself. The delay is usually interviewer time; the integration makes the specific stall visible and nameable.
The constraint to plan around
Harvest (read) and Ingestion (write) are separate APIs with separate keys and permission sets, so read access to candidates does not imply any ability to advance them.
Build notes
What you actually have to reason about in Greenhouse.
The fields that carry meaning, how the connection authenticates, and whether the event surface can be trusted. This is the part that decides whether the integration works in month three.
| Field | Why it matters |
|---|---|
| application vs candidate | one candidate can hold several applications, and metrics differ by which you count |
| current_stage | the funnel position, configured per job |
| scorecard submitted_at | the outstanding-feedback signal, which is usually the real bottleneck |
| source | attribution for hiring channels, set at application creation |
| rejection reason | the loss analysis dimension, present only where teams fill it in |
Authentication
Harvest API key for reads and a separate Ingestion key for writes, with per-endpoint permissions selected when the key is created. Read access implies no ability to advance a candidate, by design.
Events and delivery
Web hooks cover candidate and application events with signature verification. Stage-change events are the useful ones for detecting stalls.
Workflow
How the Greenhouse workflow runs.
The operating sequence, from reading the source system through to the result landing back where it belongs.
Step 01
Complete the privacy review
The data-protection assessment happens before the connection exists, and defines what is in and out of scope.
Step 02
Connect at the narrowest scope
Only the Greenhouse fields the named workflow requires are connected, with sensitive categories excluded by explicit decision.
Step 03
Coordinate, do not decide
The workflow tracks tasks, sends reminders, and schedules, while every decision affecting an individual stays with a person.
Step 04
Surface status without exposing detail
Progress is visible to the people who need it without opening the underlying personal records more widely than the workflow requires.
Design decisions
The HR decisions this connection forces.
Each of these has to be settled before the Greenhouse workflow is allowed to write anything.
Step 01
Scope to one workflow, not to the system
Connect Greenhouse for a specific workflow with the narrowest access that supports it. Employee data should never be connected broadly because it might be useful later.
Step 02
Exclude sensitive categories deliberately
Compensation, health, performance, and disciplinary data should be excluded by explicit decision rather than by assuming a scope will not reach them.
Implementation path
How to implement the Greenhouse workflow.
- 01
Complete the privacy and data-protection review before connecting anything; this is a prerequisite, not a follow-up task.
- 02
Pick one workflow — coordination, scheduling, or status — and scope the Greenhouse connection to exactly what it needs.
- 03
Document which data categories are explicitly excluded and confirm the scope cannot reach them.
- 04
Once feedback chasing works, add time-in-stage reporting per job so the hiring manager sees where their own process stalls.
Governance
Controls that matter.
Control 01
Employment decisions stay with people. Automation coordinates and prepares; it does not evaluate or decide.
Control 02
Access is scoped to a named workflow, reviewed on a schedule, and revoked when the workflow ends.
Control 03
Compensation, health, performance, and disciplinary data are excluded unless there is a specific, reviewed reason to include them.
Failure modes
How a Greenhouse integration breaks in production.
Not generic integration advice. These follow from how this system actually behaves, which is why they look nothing like the list on the next guide over.
Symptom 01
A read-only integration cannot advance candidates.
Cause
Harvest and Ingestion are separate APIs with separate keys.
Fix
Provision the Ingestion key deliberately, and treat write access as a distinct decision.
Symptom 02
Funnel metrics differ from what the recruiting team reports.
Cause
Candidates and applications were counted interchangeably.
Fix
Define which unit the metric uses and state it on the report.
Symptom 03
Interviewers are reminded about feedback they already gave.
Cause
Scorecard submission state was not checked before sending.
Fix
Check submitted_at per interviewer rather than at the application level.
What changes at scale
Rate limits are per key and adequate for typical hiring volume. Webhook-driven handling avoids the polling that would otherwise dominate.
Examples
What a working Greenhouse workflow looks like.
Bounded scenarios rather than a feature list. Each one can be verified against work the team already does.
Recruiting workflows
With Greenhouse connected at a narrow scope, a coordination workflow can run from real records instead of a manually-maintained checklist.
Onboarding coordination
Tasks, access requests, and document collection are tracked as records with owners and status, so the checklist is not held in one person's head.
Limitations and considerations
What to validate before you depend on this.
- Harvest (read) and Ingestion (write) are separate APIs with separate keys and permission sets, so read access to candidates does not imply any ability to advance them.
- Candidate-facing actions in an ATS touch people applying for jobs. An automation that advances or rejects incorrectly affects someone's employment prospects, which is a different category of mistake.
- When hiring speed is expected to improve automatically. The delay is usually interviewer availability, and visibility makes it nameable rather than shorter.
- Greenhouse holds personal data. Connecting it requires a privacy and data-protection assessment before, not after, implementation.
- Employment decisions are legally regulated in most jurisdictions. Automated assistance must keep the human decision explicit and documented.
FAQ
Greenhouse integration questions.
What records does a Greenhouse integration actually work with?
The primary records are Candidate, Application, Job, Job Post, Interview, Scorecard, and Offer. Greenhouse separates Candidate from Application, and one candidate can hold several applications across jobs. Pipeline metrics computed per candidate and per application give different, both-legitimate answers.
What should the first Greenhouse workflow be?
Read Applications sitting at an interview stage past the team's agreed limit with no Scorecard submitted, and route the reminder to the named interviewer.
What will a Greenhouse integration not do?
It will not speed up hiring by itself. The delay is usually interviewer time; the integration makes the specific stall visible and nameable.
What is the main constraint to plan around?
Harvest (read) and Ingestion (write) are separate APIs with separate keys and permission sets, so read access to candidates does not imply any ability to advance them.
What changes about a Greenhouse integration at scale?
Rate limits are per key and adequate for typical hiring volume. Webhook-driven handling avoids the polling that would otherwise dominate.
How does authentication work for Greenhouse?
Harvest API key for reads and a separate Ingestion key for writes, with per-endpoint permissions selected when the key is created. Read access implies no ability to advance a candidate, by design.
Does Greenhouse support webhooks, and can they be trusted?
Web hooks cover candidate and application events with signature verification. Stage-change events are the useful ones for detecting stalls.
What is the risk of writing to Greenhouse?
Candidate-facing actions in an ATS touch people applying for jobs. An automation that advances or rejects incorrectly affects someone's employment prospects, which is a different category of mistake.
When is connecting Greenhouse the wrong call?
When hiring speed is expected to improve automatically. The delay is usually interviewer availability, and visibility makes it nameable rather than shorter.
What should a Greenhouse integration automate first?
Start with one bounded workflow that removes a measurable handoff, duplicate-entry step, reporting delay, or follow-up gap. Expand only after the first workflow is reliable.
Does UbiGrowth require Greenhouse to be replaced?
No. The operating model is designed around connecting to systems that should remain authoritative and building workflows around them rather than forcing a wholesale replacement.
Is connector availability identical for every workspace?
No. Availability can depend on provider configuration, authentication, scopes, workspace setup, and deployment state. Validate the required connection before treating it as an operational dependency.
Is it safe to connect Greenhouse?
Only at a narrow, reviewed scope for a specific workflow, after your own privacy assessment. Employee data should not be connected broadly on the chance it becomes useful.
Can this screen or evaluate people?
No. Employment decisions stay with people. These workflows coordinate, schedule, and track — they do not evaluate individuals.
What data should be excluded?
Compensation, health, performance, and disciplinary data unless there is a specific, reviewed reason to include it. Exclusion should be an explicit decision.
How this access is governed
What ARIA is allowed to do in Greenhouse, and who decides.
Connecting Greenhouse is a permission decision, not just a setup step. These are the controls that decide what ARIA can reach, what it can change, what gets recorded, and how you take the access back.
Required permissions
ARIA works through the scopes the connection was granted, and no others. Authorization happens at the provider, so the permissions being requested are shown by the system itself before anything is connected.
What it can reach
Reachable systems are the intersection of what your organization approved in the connector registry and what the requesting identity is permitted to use. Identity resolves before execution, not after.
What it can do
Actions run through explicit execution paths with state, spend, and failure boundaries — a bounded worker path rather than an open-ended agent loop with a credential.
Credential handling
Credentials live in the governed connection layer and are resolved through canonical connection identity. They are not pasted into individual workflows, prompts, or generated artifacts.
Action logging
Execution carries state and traces: what triggered the work, which connection it used, and what came back — including an explicit failure when something did not run.
Approval and revocation
Consequential actions can be made to require a person to approve them. Access can be changed or revoked at the connection, and ARIA loses that reach without unpicking the work already completed.
Start with ARIA
Ask ARIA to run this integration.
Describe the outcome you need across this system. ARIA works out the scopes, data, and actions the job requires, and operates inside the access you grant — which you can change or revoke.
- ARIA acts only through the systems and permissions you connect.
- Connections use scoped credentials you can change or revoke.
- Actions are recorded, and consequential ones can require approval.
Start here
Turn the integration into a working business outcome.
Start with ARIA to describe the outcome, then continue into the product path that fits the workflow. Connector availability and required scopes should be validated for the specific workspace before production use.