Skip to content
All connectors
Greenhouse logo

Greenhouse

HR, recruitment & payroll

Bring new starters, changes and leavers from Greenhouse into every system that needs them, with HR approving each change.

42 ways to read, 25 ways to write, each write switched on by you.

Quality checks

Built and tested with example responses.

  1. Ready to connect: doneEvery listed action is built in.
  2. Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Greenhouse with Nexra

Connected, approved, proven.

The things teams do most with Greenhouse, an example flow with a person in the loop, and what Nexra keeps as proof.

Top actions

  • Reject applicationApproval by rule
  • Add candidate to jobApproval by rule
  • List application stage historyRead

Example flow

  1. Greenhouse · List application stage historyDone
  2. Greenhouse · Reject applicationNeeds approval
  3. Nexra · Record the decision and result in the evidence chainProven

Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Greenhouse.

What gets logged

  • Whether it ran on its own or who approved it, and under which rule
  • A fingerprint of the exact request sent to Greenhouse
  • Greenhouse's reply: what it created or changed
  • One entry in the evidence chain, linked to the one before

Try this in the sandbox

Run the whole flow with test data in your sandbox, then connect your own account when you are ready to go live.

For developers

Technical detail

Read and write Greenhouse candidates, applications, notes, tags, jobs, posts, openings, hiring teams, departments and offices, and read offers, scorecards and interviews (Harvest v3).

Greenhouse Software API docs
Source actions
42
Destination actions
25
Data types
39

What you can map

Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.

Application rejection1
  • Reject applicationDestinationProvider duplicate protectionApproval before production

    Rejects an application with a rejection reason and optional internal notes. No email is sent.

Application stage1
  • Move applicationDestinationProvider duplicate protectionApproval before production

    Advances an application to the next stage, moves it to a chosen stage, or transfers it to another job. Requires the current stage ID.

Application stages1
  • List application stage historySourceIncremental

    Stages an application has entered, with entry, exit and days in stage.

Applications4
  • Add candidate to jobDestinationNot retried automaticallyApproval before production

    Creates an application for an existing candidate on a job.

  • Get applicationSource

    One application by ID.

  • List applicationsSourceIncremental

    Applications with stage, status, source and owners, filterable by job, candidate or status.

  • Update applicationDestinationProvider duplicate protectionApproval before production

    Updates source, referrer, recruiter, coordinator or custom fields.

Applied candidate tags2
  • Tag candidateDestinationProvider duplicate protectionApproval before production

    Applies an existing candidate tag to a candidate.

  • List candidate tag assignmentsSourceIncremental

    Which tags are applied to which candidates.

Approval flows1
  • List approval flowsSourceIncremental

    Job and offer approval flows with their status.

Candidate educations2
  • Add candidate educationDestinationNot retried automaticallyApproval before production

    Adds an education entry using school, degree and discipline option IDs.

  • List candidate educationSourceIncremental

    School, degree and discipline entries on candidate profiles.

Candidate employments2
  • Add candidate employmentDestinationNot retried automaticallyApproval before production

    Adds an employer and title to a candidate's employment history.

  • List candidate employment historySourceIncremental

    Employer and title entries on candidate profiles.

Candidate tags2
  • Create candidate tagDestinationProvider duplicate protectionApproval before production

    Adds a tag to the candidate tag dictionary.

  • List candidate tagsSourceIncremental

    The organisation's candidate tag dictionary.

Candidates4
  • Create candidateDestinationNot retried automaticallyApproval before production

    Creates a candidate, optionally with an application on a job.

  • Get candidateSource

    One candidate by ID.

  • List candidatesSourceIncremental

    Candidates and prospects, optionally updated since a timestamp or filtered by email or tag.

  • Update candidateDestinationProvider duplicate protectionApproval before production

    Updates profile fields, contact lists, tags or custom fields. Lists replace existing values.

Close reasons1
  • List close reasonsSourceIncremental

    Reasons used when closing openings.

Custom field options2
  • Add custom field optionDestinationProvider duplicate protectionApproval before production

    Adds a selectable option to a single- or multi-select custom field.

  • List custom field optionsSourceIncremental

    Selectable options of single- and multi-select custom fields (schools, degrees, departments and others).

Custom fields1
  • List custom fieldsSourceIncremental

    Custom field definitions with object type and value type.

Departments3
  • Create departmentDestinationNot retried automaticallyApproval before production

    Creates a department, optionally under a parent and with an HRIS external ID.

  • List departmentsSourceIncremental

    Departments with parent and external IDs.

  • Update departmentDestinationProvider duplicate protectionApproval before production

    Renames or re-parents a department, or sets its external ID.

Interview kits1
  • List interview kitsSourceIncremental

    Interviewer prep content for each interview slot.

Interviews1
  • List interviewsSourceIncremental

    Scheduled interviews with times, location, organizer and video link.

Job boards1
  • List job boardsSourceIncremental

    Internal and external job boards with publication state.

Job hiring managers2
  • Add job hiring managerDestinationNot retried automaticallyApproval before production

    Assigns a user as a hiring manager on a job.

  • List job hiring managersSourceIncremental

    Hiring manager assignments on jobs.

Job interview stages1
  • List job stagesSourceIncremental

    Interview stages of jobs in order; use their IDs as move targets.

Job interviews1
  • List job interview planSourceIncremental

    Interview slots on each job's interview plan, with stage, duration and scheduling type.

Job notes3
  • Add job noteDestinationNot retried automaticallyApproval before production

    Adds an internal note to a job.

  • List job notesSourceIncremental

    Internal notes on jobs.

  • Update job noteDestinationProvider duplicate protectionApproval before production

    Edits a job note's body or visibility.

Job owners2
  • Add job hiring team memberDestinationNot retried automaticallyApproval before production

    Assigns a user as sourcer, recruiter or coordinator on a job.

  • List job hiring teamSourceIncremental

    Sourcer, recruiter and coordinator assignments on jobs.

Job posts3
  • Get job postSource

    One job post by ID.

  • List job postsSourceIncremental

    Job board posts with title, live state, URL and content.

  • Update job postDestinationProvider duplicate protectionApproval before production

    Updates a job post's title or HTML content, or publishes or unpublishes it.

Jobs4
  • Create jobDestinationNot retried automaticallyApproval before production

    Creates a job from a template job with its openings, department, offices and requisition ID.

  • Get jobSource

    One job by ID.

  • List jobsSourceIncremental

    Jobs with status, requisition ID, department and offices.

  • Update jobDestinationProvider duplicate protectionApproval before production

    Updates a job's name, notes, department, offices or requisition ID.

Notes2
  • Add noteDestinationNot retried automaticallyApproval before production

    Adds a note to a candidate (and optionally an application).

  • List notesSourceIncremental

    Notes and activity on candidates and applications.

Offers1
  • List offersSourceIncremental

    Offers with status, version and dates (read-only; compensation custom fields are not returned).

Offices3
  • Create officeDestinationNot retried automaticallyApproval before production

    Creates an office with location, parent and external ID.

  • List officesSourceIncremental

    Offices with location, parent and external IDs.

  • Update officeDestinationProvider duplicate protectionApproval before production

    Renames, relocates or re-parents an office, or sets its external ID.

Openings3
  • Add openingDestinationNot retried automaticallyApproval before production

    Adds a headcount opening to a job.

  • List openingsSourceIncremental

    Headcount openings on jobs, with fill state, close reason and target start date.

  • Update openingDestinationProvider duplicate protectionApproval before production

    Updates an opening's identifier, target start date or custom fields, or closes or reopens it with a close reason.

Prospect pool stages1
  • List prospect pool stagesSourceIncremental

    Stages inside prospect pools, in order.

Prospect pools1
  • List prospect poolsSourceIncremental

    Prospect pools with department, office and job restrictions.

Referrers1
  • List referrersSourceIncremental

    Referrers credited on applications, linked to users where internal.

Rejection details1
  • List rejection detailsSourceIncremental

    Who rejected each application, when and why.

Rejection reasons1
  • List rejection reasonsSourceIncremental

    Rejection reasons for rejecting applications.

Scorecard answers1
  • List scorecard answersSourceIncremental

    Answers to scorecard questions.

Scorecards1
  • List scorecardsSourceIncremental

    Interview scorecards with overall rating and notes.

Sources1
  • List sourcesSourceIncremental

    Candidate sources.

Tracking links1
  • List tracking linksSourceIncremental

    Source tracking links for jobs, posts and boards.

User roles1
  • List user rolesSourceIncremental

    Permission roles (job admin and site admin roles).

Users2
  • Get userSource

    One user by ID.

  • List usersSourceIncremental

    Greenhouse users with emails, offices, departments and status.

Access and limits

Authentication
Harvest v3 (OAuth) client ID and secret
Plans and access
Harvest API access is available on all Greenhouse Recruiting plans. Harvest v3 credentials grant only the scopes selected in Greenhouse. Offers and private fields require the integration user to hold the private-data permission. Harvest v1/v2 were removed on 31 August 2026.
Test environment
Greenhouse provides sandbox sites to customers and partners on request.
Rate limits
Fixed 30-second windows per credential (see X-RateLimit-Limit); HTTP 429 includes Retry-After. Token requests have a separate 60-second window.
Pagination
Cursor pagination through the Link header (rel="next"), up to 500 per page; next-page URLs carry only the cursor.
Provider events
Greenhouse web hooks for candidate, application, offer and job events. Flows can start the moment something happens: when a candidate is hired; when a new application is submitted; when a candidate changes stage; when an offer is created.

Before you build a flow

  • Uses Harvest v3. Requests act as the credential's integration user; acting as a specific Greenhouse user (the token sub claim) is not configurable.
  • Offers are read-only and their custom fields (which commonly hold compensation) are not returned. Offer creates and updates, approval requests, hires and pay inputs or pay ranges are excluded.
  • Custom fields on candidates, applications, jobs and openings omit currency and range values and fields whose key or name indicates pay, tax, bank, identity or health data.
  • EEOC and demographic endpoints (eeoc, demographic questions, answers and question sets) and AI opt-out statuses are never read.
  • Rejecting applications never sends a rejection email: Nexra never passes rejection_email. Candidate merges, anonymisation, unreject, conversion to prospect, attachments, interview scheduling, scorecard writes, user creation and activation (which can email invitations) and all deletes are not implemented.
  • candidates.list keeps its existing optional email filter, which Greenhouse only accepts as a query parameter; prefer filtering by updatedSince or tag where the email must not appear in request URLs.
  • Moving and rejecting applications return no body; Nexra returns the application ID with the requested change.
  • Candidate, application, note, education, employment, job, opening, hiring team, department and office creates have no idempotency key; uncertain writes are not repeated automatically.

Developer reference

  1. Create the Greenhouse Software credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose Greenhouse, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/greenhouse and the Connections API.