Skip to main content
Integrations · Greenhouse
Guild agents read Greenhouse candidates, applications, jobs, openings, interviews, and scorecards, and add notes to candidates through the Harvest v3 API. Guild stores your Greenhouse credentials and injects them server-side, so agent code never sees them. Credential policies decide which Greenhouse operations each agent may call.

Book a demo

See how teams govern agents that use Greenhouse.

Talk to sales

Get access to Guild, then connect Greenhouse to your first agent.

What the Greenhouse integration exposes

Both Greenhouse integrations call Harvest v3 at https://harvest.greenhouse.io/v3, Greenhouse’s replacement for the retired v1 and v2 APIs. Tools cover candidates, applications, jobs, openings, offices, departments, interviews, scorecards, users and their job permissions, custom fields, approval flows, notes, attachments, and tags.

Choose an integration

Harvest v3 authenticates with short-lived OAuth access tokens issued by the client credentials grant. The two integrations have the same tools and differ in who gets those tokens. Use Greenhouse (OAuth) unless you have a reason not to.

How it works

1

Create Harvest v3 credentials

In Greenhouse, create a Harvest v3 custom integration and note its client ID and client secret. Grant only the permissions the agent needs.
2

Connect them in Guild

Go to Access & setup > Credentials, click Connect, select greenhouse-oauth2, and enter the Client ID and Client Secret. Guild exchanges them for an access token at https://auth.greenhouse.io/token and keeps it current.
3

Import the tools you need

Import GreenhouseOauth2Tools from @guildai-services/guildai~greenhouse-oauth2 and use pick() to give the agent only the tools its job needs.

Why Greenhouse access needs governing

Greenhouse holds candidate personal data, and the integration can also edit and delete applications, users, and permissions. Guild keeps your credentials server-side and checks every request against your credential policies. A sourcing agent can read candidates and add notes while a DENY rule blocks every delete and user change.

Authentication

Greenhouse (OAuth)

  • Type: OAuth M2M, client credentials grant
  • Token endpoint: https://auth.greenhouse.io/token, with the client ID and secret sent as HTTP Basic authentication
  • Header: Guild sends the current access token as Authorization: Bearer <token>

Greenhouse (access token)

  • Type: API key
  • Header: Guild sends the token as Authorization: Bearer <token>
Request the token yourself with the client credentials grant, then select greenhouse under Access & setup > Credentials and paste access_token from the response into API Key:
When the token expires, requests return 401 until you request a new one and reconnect it. See Credentials for workspace, member, and agent-scoped credentials.

Usage

The integration has more than 170 tools, so pick the ones the agent needs rather than spreading the whole set. With the access-token integration, import GreenhouseTools from @guildai-services/guildai~greenhouse and drop oauth2_ from each tool name, such as greenhouse_get_jobs.

Tools

Tools in the latest published version of guildai~greenhouse-oauth2. The access-token integration has the same tools with the greenhouse_ prefix.

Frequently asked questions

No. Both integrations call Harvest v3 only. Greenhouse retired v1 and v2 on August 31, 2026.
With greenhouse-oauth2, check that the client ID and secret are still valid in Greenhouse, then reconnect them. With greenhouse, the access token expired: request a new one and reconnect it, or switch to greenhouse-oauth2.
Not yet. Guild doesn’t receive Greenhouse webhooks, so you can’t create an event trigger for Greenhouse. Run the agent on a schedule instead.
Also runs on Guild: Ashby Read: Docs: Credential policies · Credentials · Tools in agents
Last modified on November 4, 2026