Skip to main content
How to Activate a Greenhouse Integration

Step-by-step guide for activating a Greenhouse ATS & CRM integration

Sam Abello avatar
Written by Sam Abello
Updated over 2 months ago

Grayscale’s conversational recruiting platform makes it easy to text with candidates from within Greenhouse, while automating repetitive tasks in the hiring process.  

Greenhouse Recruiting’s integration with Grayscale offers powerful texting capabilities for engaging with talent from directly within Greenhouse. In this article, we will cover how to: 

  • Configure User Setup Permissions in Greenhouse Recruiting

  • Create a Harvest API Key for the Greenhouse/Grayscale Integration

  • Leverage Grayscale to get the most from your integration 

NOTE: In order to enable the Greenhouse/Grayscale integration, you will need developer permission to manage ALL organization’s API Credentials. Contact a Greenhouse admin user from your organization to set up the integration or to enable you with developer permissions.


STEP 1: Create a Harvest API Key for the Greenhouse/Grayscale Integration

  1. To create a Harvest API key for the integration, click on the Configure icon in the upper right-hand corner

  2. Navigate to Dev Center on the left-hand panel

  3. From the Dev Center page, click API Credential Management

  4. From the API Credential Management page, click Create New API Key to generate the API key for Grayscale

  5. From the Create New Credential dialog box, make the following selections:

    1. API Type: Harvest

    2. Partner: Grayscale

    3. Description: Grayscale Harvest API Key

  6. When finished, click Manage Permissions to generate the Harvest API key and automatically assign it the appropriate permissions required by Grayscale.

  7. On the API key successfully created pop-up, click Copy to save your API key to your clipboard. Store the API key in a secure location to provide to Grayscale in the next step.

  8. Click I have stored the API Key once you have copied and saved the key.

Note: You cannot access the full API key again after clicking I have stored the API Key. If you lose your API key and need to access it later, you must create a new API key, provide it to the integration partner, and then revoke access to the original key.


STEP 2 : Manage Permissions

On the Manage API Key Permissions page, click Select All, then scroll to the bottom and click Save

NOTE: Only want to include the minimum number of permissions with your API key? Here is the list needed to power Grayscale's current capabilities:

  • Activity Feed

  • Applications

  • Candidates

  • Job Posts

  • Job Stages

  • Jobs

  • Prospect Pool (Greenhouse CRM customers only)

  • Scheduled Interviews

  • Tags

  • User Roles

  • Users


STEP 3: Save the Greenhouse API Key in Grayscale

  1. Navigate to your Grayscale Settings, click on ATS Integration, and select Greenhouse from the options

  2. Paste your API key, and select the appropriate name from the dropdown menu for the Post Notes As user (we recommend the Greenhouse administrator; they do not need to be a Grayscale user)

  3. Then hit Save


STEP 4: Enable Web Hooks in Greenhouse

Once you save the API key, you'll see a section appear labeled Incoming Webhooks. 

You'll copy both the URL and Secret and paste back in Greenhouse (details below).

PRO TIP: We recommend copying and pasting the URL and Secret code somewhere you can easily access again, as you'll be doing a bit of copy/paste in steps to follow.

Head back to Greenhouse

  1. Navigate back to the Dev Center in Greenhouse

  2. From the Dev Center page, scroll to the bottom click Webhooks. Then click Webhooks one more time.

  3.  You will be directed to the below page to Create A New Webhook

From this Create A New Webhook page, you will create 15 web hooks to enable all integration capabilities. To get started, follow these steps one by one: 

Web Hook #1: Delete Application

  • Name this web hook: Grayscale: Delete Application

  • When: Find 'Delete Application' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #2: Application Updated

  • Name this web hook: Grayscale: Application Updated

  • When: Find 'Application Updated' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #3: Delete Candidate

  • Name this web hook: Grayscale: Delete Candidate

  • When: Find 'Delete Candidate' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #4: Merged Candidate

  • Name this web hook: Grayscale: Merged Candidate

  • When: Find 'Merged Candidate' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #5: Candidate Has Changed Stage

  • Name this web hook: Grayscale: Candidate Has Changed Stage

  • When: Find 'Candidate has changed stage' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #6: Candidate Has Been Hired

  • Name this web hook: Grayscale: Candidate Has Been Hired

  • When: Find 'Candidate has been hired' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #7: Candidate or Prospect Rejected

  • Name this web hook: Grayscale: Candidate or Prospect Rejected

  • When: Find 'Candidate or Prospect rejected' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #8: Candidate or Prospect Unrejected

  • Name this web hook: Grayscale: Candidate or Prospect Unrejected

  • When: Find 'Candidate or Prospect unrejected' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #9: Candidate or Prospect Updated

  • Name this web hook: Grayscale: Candidate or Prospect Updated

  • When: Find 'Candidate or Prospect updated' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #10: Candidate Has Submitted Application

  • Name this web hook: Grayscale: Candidate Has Submitted Application

  • When: Find 'Candidate has submitted application' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #11: Job Created

  • Name this web hook: Grayscale: Job Created

  • When: Find 'Job Created' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #12: Job Updated

  • Name this web hook: Grayscale: Job Updated

  • When: Find 'Job Updated' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #13: Candidate Has Been Unhired

  • Name this web hook: Grayscale: Candidate Has Been Unhired

  • When: Find 'Candidate Has Been Unhired' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #14: Job Deleted

  • Name this web hook: Grayscale: Job Deleted

  • When: Find 'Job Deleted' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Web Hook #15 (Greenhouse CRM users ONLY): Prospect Created

  • Name this web hook: Grayscale: Prospect Created

  • When: Find 'Prospect Created' from the dropdown

  • Endpoint URL: copy from Grayscale under Settings > ATS Integration

  • Secret key: copy from Grayscale under Settings > ATS Integration

Whew, you made it! Your Greenhouse integration is all set up and ready to go!


The Functionality You Just Enabled 💫

Activity Feed Sync

Your conversation history will be automatically saved in the Activity Feed for the candidate, so you have a record of the texting conversation directly on the candidate profile. 

NOTE: We import the entire conversation 1 hour after the last message is sent/received to ensure the entire communication is organized together in the same note.

Seamless Bulk Messaging

When sending bulk messages, you'll be able to search open jobs in Greenhouse directly from our Chrome extension to find relevant candidates to message.

So if you want to quickly bulk message all candidates at the Phone Interview stage of an open req, just search for the job, select the stage, and off you go!

For Greenhouse CRM customers, you'll be able to search by Pools and select all candidates at specific stages. 

Quick Search Across All Greenhouse Candidates & Prospects

Seamlessly search across all your candidates in Greenhouse to find the right candidate to message.


Updating the Post Notes As user in Grayscale


Note: The Post Notes As user must be a Site Admin in Greenhouse

In order for Grayscale Transcripts to sync in Greenhouse, you'll need to select a Greenhouse Site Admin as the Post Notes As user in Grayscale. Once a Post Notes As user has been selected, the Grayscale conversation transcripts will begin or resume syncing in the Greenhouse activity log.

If you are having trouble with the transcripts, a good place to start is to make sure that the Post Notes As user is still set to an active Greenhouse user account.

Here's how to change the Post Notes As user in Grayscale:

  1. Log into Grayscale (this requires Admin permissions, so if you aren't an Admin, ask your Admin to perform these steps for you)

  2. Go to Settings

  3. Click ATS Integration at the bottom of the page

  4. Click Edit under Current Integration

  5. Click the name under Post Notes As to open the list

  6. Enter the email address of the Greenhouse user you wish to use

  7. When you see the user you want in the list, click on them

  8. Click Save

Setting up a generic Post Notes As user

If you don't want to user a specific person's Greenhouse account, you can create a generic admin account in Greenhouse to use as the Post Notes As user. Here's the Greenhouse article on how to do that!


FAQs


My texting history isn’t displaying within the Activity Feed.

We update the activity feed one hour after the latest text message was sent/received for that candidate. This ensures your entire conversation is organized within the same note in the feed. If it’s been over an hour, try refreshing the page.

My Greenhouse API key turned red when I created it in Greenhouse. Is that normal?

No, your API key should be green. If it's red, that means there's a problem with how it's set up. Go back through the API key setup steps above, and if the problem persists, you may need to loop in Greenhouse support. We're here to help troubleshoot as well.


Still having issues?  Live chat with us below and we'll help you out! 

Did this answer your question?