Remote's Greenhouse integration uses OAuth (Harvest v3) credentials for the Offer created webhook. This article covers how to create those credentials in Greenhouse and add them to Remote, including the two Greenhouse custom fields the integration needs.
This article is for customers using the Greenhouse integration with Remote.
Before you start
The Offer created flow needs three things in Greenhouse:
- OAuth API credentials
- An Offer created webhook
- Two Greenhouse offer custom fields (also required for Candidate has been hired)
In Remote, go to Company settings > Integrations > Integrations & APIs > Greenhouse, then use the Offer created row under Greenhouse webhooks in Remote.
If you see Create Harvest API key instead of Create OAuth credentials when you start this setup, contact Remote support before continuing.
Add the required Greenhouse offer custom fields
Remote needs two offer custom fields in Greenhouse before either webhook can create an onboarding profile. Add them in Greenhouse under the gear icon > Custom Options > Offers.
Field 1: Send New Hire Information to Remote for Onboarding
- Click Add Field.
- Set Field name to
Send New Hire Information to Remote for Onboarding. - Set Field type to Yes/No.
- Select Required, then click Save.
When creating an offer or marking a candidate as hired, set this field to Yes to send the candidate to Remote.
Field 2: Country
- On Custom Options > Offers, click Add Field again.
- Set Field name to
Country. - Set Field type to Single select.
- Add the country options. During setup in Remote, use Click here to copy all country options to copy the full list into Greenhouse.
- Select Required, then click Save.
If you already have a country offer field, you can reuse it only if its Greenhouse field key starts with country (for example, a field named Country). A field such as Work country might not work. If you are unsure, add the Country field described above instead.
Step 1: Create OAuth credentials in Greenhouse
- In Greenhouse, click the gear icon in the top navigation bar.
- Select Dev Center > API Credential Management.
- Create the OAuth credential set required for the Remote Greenhouse integration (Harvest v3 OAuth).
- Copy the Client ID and Client Secret.
Greenhouse shows the Client Secret only once, so store it somewhere safe before you leave the page.
Step 2: Add API scopes in Greenhouse
Your Harvest v3 OAuth credential needs scopes enabled in Greenhouse before Remote can request an access token. You set these scopes on the credential in Greenhouse; Remote does not request specific scopes.
For the Offer created webhook, enable at least these read and list scopes on the OAuth credential:
| Greenhouse resource | Scope | Used for |
|---|---|---|
| Applications | harvest:applications:list |
Fetching application data when an offer is created |
| Candidates | harvest:candidates:list |
Fetching candidate profile details |
| Jobs | harvest:jobs:list |
Resolving the job title on the offer |
To manage scopes, go to Dev Center > API Credential Management, edit the credential, then select Manage permissions (or Manage scopes).
If no scopes are enabled, token requests fail and you may see the error Client application is not requesting any scopes. Enable the scopes above before you store the credentials in Remote. For more information, see Greenhouse Harvest v3 authentication and this Greenhouse support article.
Step 3: Enter your credentials in Remote
First-time setup
- Under Greenhouse webhooks in Remote, click Add on Offer created.
- Follow the Setting up Offer created webhook wizard:
-
Create webhook: In Greenhouse, go to Dev Center > Web Hooks > Web Hooks and create a webhook with:
-
Name this web hook:
Remote Greenhouse Integration -
When:
Offer created - Endpoint URL and Secret key: copy these from Remote
-
Maximum Attempts:
1(under Advanced Settings)
-
Name this web hook:
- Click Create Web hook, add the offer custom fields above if they are not already in Greenhouse, then click Check connection.
- Click Continue.
- Create OAuth credentials: paste your Client ID and Client secret from Greenhouse, then click Store OAuth credentials.
-
Create webhook: In Greenhouse, go to Dev Center > Web Hooks > Web Hooks and create a webhook with:
- Click Finish, then confirm in the Finish webhook setup window by clicking Finish setup.
Updating existing OAuth credentials
- On the Offer created row, click Manage credentials.
- If credentials are already saved, click Update OAuth credentials.
- Paste the new Client ID and Client secret from Greenhouse.
- Click Store OAuth credentials and confirm you see Remote stored your OAuth credentials.
- Click Finish to return to the integration page.
Manage credentials appears on the Offer created row after that webhook has been added.
Keep your legacy key until confirmed
Leave your legacy Harvest API key in place until Remote confirms the OAuth v3 setup works end to end.
Troubleshooting
Ask Remote to confirm the next Greenhouse-triggered flow completes successfully. If it does not, check:
- The offer custom fields exist and are set on the offer (Send New Hire Information to Remote for Onboarding is set to Yes, and Country is filled in)
- The Client ID and Client secret were pasted correctly, with no extra spaces or missing characters
- Your Greenhouse credentials are Harvest v3 OAuth, not a legacy Harvest API key
- The API scopes listed in Step 2 are enabled on the OAuth credential
- Check connection shows Connection successful in Step 1 of setup
"Client application is not requesting any scopes"
If Remote reports an authentication failure with this message:
- In Greenhouse, open Dev Center > API Credential Management.
- Edit the Harvest v3 OAuth credential used for Remote.
- Select Manage permissions or Manage scopes, then enable the scopes listed in Step 2.
- Save your changes, then go back to Manage credentials in Remote and click Store OAuth credentials again. You can reuse the same Client ID and secret unless you want to generate a new secret.
Remote does not send scope names when requesting a token; Greenhouse applies whatever scopes are saved on the credential.
Comments
0 comments
Please sign in to leave a comment.