Greenhouse - How do I set up my partner credentials?

Last updated: May 11, 2026

Overview

To allow your customers to link Greenhouse with Merge, you will need to set up an Greenhouse OAuth App and enter your applications credentials within Merge.

Instructions

Step 1: Submit a Greenhouse integration request form

If you are already an official Greenhouse partner with a signed agreement, proceed directly to step 2.

If you haven't already done so, you'll need to sign an agreement with Greenhouse. Start the process by submitting the below integration request form.

Applications are reviewed by Greenhouse on the first Monday of every month. After completing their review, Greenhouse will share an API agreement with you.

Step 2: Email Greenhouse to retrieve your partner credentials

After receiving an API agreement from Greenhouse, you'll be able to retrieve your Client Id and Client Secret by emailing [email protected]. The email should contain the following.

  • The name of your integration

  • Environment (unless just using for testing, choose Production)

  • Redirect URI: https://app.merge.dev/oauth/callback

  • A 128x128 logo

A sample email body is attached below.

Hello Greenhouse team,

We're working with Merge to build an integration with Greenhouse. We have completed the partnership agreement process and would like to request our Client Id and Client Secret to proceed.

Please find our integration details below:

Integration Name: [Your Product / Integration Name]
Environment: [Sandbox / Production]
Required Scopes: [List of required scopes, e.g., harvest:job_posts, harvest:candidates, see usage below]
Redirect URI: https://app.merge.dev/oauth/callback
Logo: attached [Attach a 128x128 logo file to this email]

Please let me know if you need any additional information from our side. We appreciate your support and look forward to moving ahead with the integration.

Scopes

Scope

Scope Description

Used for

harvest:applications:move

Allows moving applications to a new job stage in Greenhouse.

Application (Edit/Write)

harvest:departments:create

Allows creating departments in Greenhouse.

Department (Write)

harvest:offices:create

Allows creating offices in Greenhouse.

Office (Write)

harvest:candidate_tags:create

Allows creating candidate tags in Greenhouse.

Tag (Write)

harvest:attachments:create

Allows creating attachments in Greenhouse.

Attachment (Write), Candidate (Write)

harvest:users:create

Allows creating users in Greenhouse.

RemoteUser (Write)

harvest:candidates:create

Allows creating candidates in Greenhouse.

Candidate (Write)

harvest:candidates:update

Allows updating existing candidates in Greenhouse.

Candidate (Write/Edit)

harvest:interviews:create

Allows creating interviews in Greenhouse.

Scheduled Interview (Write)

harvest:applications:create

Allows creating applications in Greenhouse.

Application (Write)

harvest:notes:create

Allows creating notes in Greenhouse, such as emails or notes.

Activity (Write)

harvest:applications:list

Allows listing applications from Greenhouse.

Application (Read/Write), Candidate (Read), RemoteUser (Read), RejectReason (Read), Job (Read), JobInterviewStage (Read)

harvest:candidate_tags:list

Allows listing candidate tags from Greenhouse.

Tag (Read)

harvest:candidates:list

Allows listing candidates from Greenhouse.

Candidate (Read), EmailAddress (Read), PhoneNumber (Read), Tag (Read), Url (Read)

harvest:departments:list

Allows listing departments from Greenhouse.

Department (Read)

harvest:eeoc:list

Allows listing EEOC data from Greenhouse.

EEOC (Read), Candidate (Read)

harvest:interviewers:list

Allows listing interviewers from Greenhouse.

Application (Read), JobInterviewStage (Read), RemoteUser (Read), ScheduledInterview (Read), Scorecard (Read)

harvest:interviews:list

Allows listing interviews from Greenhouse.

Application (Read), JobInterviewStage (Read), RemoteUser (Read), ScheduledInterview (Read), Scorecard (Read)

harvest:job_interview_stages:list

Allows listing job interview stages from Greenhouse.

Job (Read), JobInterviewStage (Read)

harvest:job_interviews:list

Allows listing job interviews from Greenhouse.

Application (Read), JobInterviewStage (Read), RemoteUser (Read), ScheduledInterview (Read), Scorecard (Read)

harvest:job_posts:list

Allows listing job posts from Greenhouse.

Job (Read), Job Posting (Read), ScreeningQuestion (Read), ScreeningQuestion Option (Read)

harvest:jobs:list

Allows listing jobs from Greenhouse.

Department (Read), Job (Read), Office (Read), RemoteUser (Read)

harvest:notes:list

Allows listing notes from Greenhouse.

Activity (Read), Candidate (Read), RemoteUser (Read)

harvest:offers:list

Allows listing offers from Greenhouse.

Application (Read), Offer (Read)

harvest:offices:list

Allows listing offices from Greenhouse.

Job (Read), Office (Read)

harvest:rejection_reasons:list

Allows listing rejection reasons from Greenhouse.

RejectReason (Read)

harvest:scorecards:list

Allows listing scorecards from Greenhouse.

Scorecard (Read), Application (Read), RemoteUser (Read)

harvest:sources:list

Allows listing sources from Greenhouse.

Application (Read/Write), Candidate (Read/Write), Job (Read), JobInterviewStage (Read), RejectReason (Read), RemoteUser (Read)

harvest:users:list

Allows listing users from Greenhouse.

RemoteUser (Read), Validate during linking

harvest:job_hiring_managers:list

Allows listing job hiring managers from Greenhouse.

RemoteUser (Read)

harvest:openings:list

Allows listing openings from Greenhouse.

Application (Read), Offer (Read), Department (Read), Job (Read), Office (Read), RemoteUser (Read)

harvest:attachments:list

Allows listing attachments from Greenhouse.

Attachment (Read), Candidate (Read)

harvest:rejection_details:list

Allows listing rejection details from Greenhouse.

RejectReason (Read), Application (Read), JobInterviewStage (Read)

harvest:application_stages:list

Allows listing application stages from Greenhouse.

Application (Read/Write/Edit), Candidate (Write), JobInterviewStage (Read), RemoteUser (Read), Job (Read)

Step 3: Input your Client Id and Client Secret within Merge

This is not yet supported. We aim to push out support on March 25th, 2026.

  1. After receiving your Client Id and Client Secret from Greenhouse, navigate to the Integrations page in the Merge Dashboard

  2. Expand the Greenhouse integration and select Edit

  3. For each parameter, click Edit and enter the corresponding values, below

    1. OAuth Client Id: Client Id value provided by Greenhouse

    2. OAuth Client Secret: Client Secret value provided by Greenhouse

    3. OAuth Redirect URI: https://app.merge.dev/oauth/callback

    4. Scope: OAuth scopes, provisioned by Greenhouse (space separated list)