Setup Greenhouse

The Greenhouse connector lets you connect to a Greenhouse instance and access Greenhouse resources using the published APIs.

Configuring the connections

Following details are required to establish the connection

  1. Greenhouse API URL: Greenhouse service endpoint URL. Should be set to:

  2. Greenhouse API Token: API token that will be used to establish the connection. Harvest API keys can be obtained in Greenhouse. In order to create a Harvest API key, a user must be granted the “Can manage ALL organization’s API Credentials” in the “Developer permission” section. That user can then go Configure >> Dev Center >> API Credential Management. From there, you can create a Harvest API key and choose which endpoints it may access. Ref:

How to generate an API Key in Greenhouse

Go to Settings > Dev Center > API Credential Management.

Create a new API key for OnLink. Select type: Harvest

Select the necessary permissions for this API key.

Note: Select Applications and Candidates for OnLink to get access to Candidate profile data.

Manage Permissions



Ensure that you give this API credential the necessary permission. If permissions are not configure correctly, OnLink actions may not work.

  1. Note: Users with Harvest API keys may access all the data in the endpoint. Access to data in Harvest is binary: everything or nothing. Harvest API keys should be given to internal developers with this understanding and to third parties with caution. Each key should only be allowed to access the endpoints it absolutely needs.

Post Function Mapping

Create Job Input Field Mapping


ID of the user issuing this request. Required for auditing purposes.

Template Job ID

This is the job we will use to generate the new job. The new job will receive most of the settings of the template job. The On-Behalf-Of user must have access to this job.

Make sure the job you are using is set as a Template Job. You can get the ID from the URL of the job.


Number of openings

The number of openings that will be created for this job.

Job name (external)

This will be the name on the new job post. If this is not included, the job post names in the base job will be copied.

Job name (internal)

This is the internal name of the new job. If this is not included, the name of the new job will be “Copy Of (the template job’s name)”

Output is Job ID field and will be set to the created job ID if the Create Job call is successful. If not successful, the field will be populated with an error message.