Greenhouse API Directory

Greenhouse software is a leading applicant tracking system (ATS) and recruiting platform designed to enhance the recruitment process for organizations of all sizes. By offering a comprehensive suite of tools, Greenhouse streamlines the entire hiring workflow, from sourcing candidates to managing applications and coordinating interviews. This robust software empowers human resources and recruitment teams to collaborate effectively, ensuring a seamless and efficient hiring process. With its focus on data-driven decision-making, Greenhouse provides valuable insights through recruiting metrics, enabling organizations to optimize their recruitment strategies and improve overall hiring outcomes.

A key feature of Greenhouse is its ability to integrate seamlessly with other platforms through the Greenhouse API. This integration capability allows businesses to customize and extend the functionality of the software, ensuring it meets their unique recruitment needs. By leveraging the Greenhouse API, organizations can automate various aspects of the recruitment process, enhance data sharing across systems, and create a more cohesive and efficient hiring ecosystem. As a result, Greenhouse not only simplifies recruitment but also fosters a more strategic approach to talent acquisition.

Key Highlights of Greenhouse APIs

  • 1. Easy Data Access:
    • Facilitates seamless data flow into and out of the platform.
  • 2. Custom Integration:
    • Allows for tailored integrations to fit specific hiring workflows.
  • 3. Real-Time Sync:
    • Typically supports real-time data synchronization.
  • 4. Strong Security:
    • Implements security measures to protect data and ensure secure access.
  • 5. Scalable:
    • Designed to handle varying loads, suitable for different users and organizations.
  • 6. Developer-Friendly:
    • Accessible to developers with documentation and support.
  • 7. Global Support:
    • Accommodates international users and functions across regions.
  • 8. Error Handling and Logging:
    • Includes features for robust error handling.
  • 9. Rate Limiting:
    • Prevents abuse and ensures fair usage.
  • 10. Version Control:
    • Manages changes and updates without disrupting existing integrations.
  • 11. Data Transformation:
    • Allows manipulation of data formats as needed.
  • 12. Webhook Support:
    • Enables real-time notifications and updates.
  • 13. Detailed Analytics and Reporting:
    • Provides insights into hiring processes and data usage.
  • 14. Sandbox Environment:
    • Allows testing of integrations and features without affecting live data.

Greenhouse API Endpoints

General

  • POST https://api.example.com/greenhouse/test : Test Greenhouse API
  • POST https://api.example.com/v1/sample : Sample API

Applications

  • POST https://api.greenhouse.io/v1/applications/{application_id}/advance : Advance Application
  • GET https://harvest.greenhouse.io/v1/applications/{application_id}/offers : List Offers Associated with an Application
  • GET https://harvest.greenhouse.io/v1/applications/{application_id}/offers/current_offer : Fetch Current Offer for Application
  • GET https://harvest.greenhouse.io/v1/applications/{id} : Retrieve Application by ID
  • PATCH https://harvest.greenhouse.io/v1/applications/{id}/convert_prospect : Convert Prospect Application to Candidate
  • GET https://harvest.greenhouse.io/v1/applications/{id}/demographics/answers : List Demographic Answers for an Application
  • GET https://harvest.greenhouse.io/v1/applications/{id}/eeoc : Retrieve Application EEOC Data
  • POST https://harvest.greenhouse.io/v1/applications/{id}/hire : Hire Application
  • POST https://harvest.greenhouse.io/v1/applications/{id}/move : Move Application Between Stages
  • PATCH https://harvest.greenhouse.io/v1/applications/{id}/offers/current_offer : Update Current Offer on Application
  • POST https://harvest.greenhouse.io/v1/applications/{id}/reject : Reject Application
  • GET https://harvest.greenhouse.io/v1/applications/{id}/scheduled_interviews : Get Scheduled Interviews for an Application
  • GET https://harvest.greenhouse.io/v1/applications/{id}/scorecards : List All Submitted Scorecards for an Application
  • POST https://harvest.greenhouse.io/v1/applications/{id}/transfer_to_job : Transfer Application to Different Job Stage
  • POST https://harvest.greenhouse.io/v1/applications/{id}/unreject : Unreject Application

Approval Flows

  • GET https://harvest.greenhouse.io/v1/approval_flows/{id} : Retrieve Approval Flow
  • POST https://harvest.greenhouse.io/v1/approval_flows/{id}/request_approvals : Request Approval Flow Start

Approver Groups

  • PUT https://harvest.greenhouse.io/v1/approver_groups/{approver_group_id}/replace_approvers : Replace Approvers in Approver Group

Candidates

  • POST https://harvest.greenhouse.io/v1/candidates : Create a New Candidate
  • PUT https://harvest.greenhouse.io/v1/candidates/merge : Merge Two Candidates
  • DELETE https://harvest.greenhouse.io/v1/candidates/{candidate_id}/educations/{education_id} : Delete Education Record by Candidate and Education ID
  • DELETE https://harvest.greenhouse.io/v1/candidates/{candidate_id}/employments/{employment_id} : Delete Employment Record
  • PUT https://harvest.greenhouse.io/v1/candidates/{candidate_id}/tags/{tag_id} : Apply a Tag to a Candidate
  • DELETE https://harvest.greenhouse.io/v1/candidates/{id} : Delete Candidate by ID
  • POST https://harvest.greenhouse.io/v1/candidates/{id}/activity_feed/emails : Create Candidate Email Note
  • POST https://harvest.greenhouse.io/v1/candidates/{id}/activity_feed/notes : Create Candidate Note
  • PUT https://harvest.greenhouse.io/v1/candidates/{id}/anonymize?fields={field_names} : Anonymize Candidate Data
  • POST https://harvest.greenhouse.io/v1/candidates/{id}/attachments : Post Attachment to Candidate Profile
  • POST https://harvest.greenhouse.io/v1/candidates/{id}/educations : Create a New Education Record for a Candidate
  • POST https://harvest.greenhouse.io/v1/candidates/{id}/employments : Create a New Employment Record
  • GET https://harvest.greenhouse.io/v1/candidates/{id}/tags : Retrieve Candidate Tags

Close Reasons

  • GET https://harvest.greenhouse.io/v1/close_reasons : List Organization's Close Reasons

Custom Fields

  • GET https://harvest.greenhouse.io/v1/custom_field/{id} : Get Custom Field by ID
  • DELETE https://harvest.greenhouse.io/v1/custom_field/{id}/custom_field_options : Destroy Custom Field Options
  • POST https://harvest.greenhouse.io/v1/custom_fields : Create Custom Fields in Greenhouse
  • GET https://harvest.greenhouse.io/v1/custom_fields/{field_type} : Get Custom Fields
  • DELETE https://harvest.greenhouse.io/v1/custom_fields/{id} : Delete Custom Field

Degrees

  • GET https://harvest.greenhouse.io/v1/degrees : Retrieve All Degree and Education Levels

Demographics

  • GET https://harvest.greenhouse.io/v1/demographics/answer_options : List Organization's Demographic Answer Options
  • GET https://harvest.greenhouse.io/v1/demographics/answer_options/{id} : Retrieve Demographic Answer Option by ID
  • GET https://harvest.greenhouse.io/v1/demographics/answers : List Organization's Demographic Answers
  • GET https://harvest.greenhouse.io/v1/demographics/answers/{id} : Retrieve Demographic Answer by ID
  • GET https://harvest.greenhouse.io/v1/demographics/question_sets : List Organization's Demographic Question Sets
  • GET https://harvest.greenhouse.io/v1/demographics/question_sets/{id} : Retrieve Demographic Question Set by ID
  • GET https://harvest.greenhouse.io/v1/demographics/question_sets/{id}/questions : List Demographic Questions for a Question Set
  • GET https://harvest.greenhouse.io/v1/demographics/questions : List Organization's Demographic Questions
  • GET https://harvest.greenhouse.io/v1/demographics/questions/{id} : Retrieve Demographic Question by ID
  • GET https://harvest.greenhouse.io/v1/demographics/questions/{id}/answer_options : List Demographic Answer Options

Departments

  • GET https://harvest.greenhouse.io/v1/departments : List Organization's Departments
  • PATCH https://harvest.greenhouse.io/v1/departments/{id} : Edit Department's Basic Information

Disciplines

  • GET https://harvest.greenhouse.io/v1/disciplines : List Organization's Disciplines

EEOC

  • GET https://harvest.greenhouse.io/v1/eeoc : List Organization's EEOC Data

Email Templates

  • GET https://harvest.greenhouse.io/v1/email_templates : List Organization's Email Templates
  • GET https://harvest.greenhouse.io/v1/email_templates/{id} : Retrieve Email Template by ID

Job Posts

  • GET https://harvest.greenhouse.io/v1/job_posts : List Organization's Job Posts
  • GET https://harvest.greenhouse.io/v1/job_posts/{id} : Get Single Job Post
  • GET https://harvest.greenhouse.io/v1/job_posts/{id}/custom_locations : List Custom Location Options for Job Post

Job Stages

  • GET https://harvest.greenhouse.io/v1/job_stages : List Organization's Job Stages
  • GET https://harvest.greenhouse.io/v1/job_stages/{id} : Retrieve Job Stage by ID

Jobs

  • GET https://harvest.greenhouse.io/v1/jobs : List Organization's Jobs
  • PATCH https://harvest.greenhouse.io/v1/jobs/{id} : Update Job Details
  • GET https://harvest.greenhouse.io/v1/jobs/{id}/approval_flows : List all of a job’s approval flows
  • GET https://harvest.greenhouse.io/v1/jobs/{id}/hiring_team : Get Hiring Team for a Job
  • GET https://harvest.greenhouse.io/v1/jobs/{id}/job_post : Retrieve Job Post by Job ID
  • GET https://harvest.greenhouse.io/v1/jobs/{id}/job_posts : List Job Posts for a Given Job ID
  • GET https://harvest.greenhouse.io/v1/jobs/{id}/stages : Retrieve Job Stages by Job ID
  • PUT https://harvest.greenhouse.io/v1/jobs/{job_id}/approval_flows : Create or Replace Approval Flow for a Job or Offer
  • POST https://harvest.greenhouse.io/v1/jobs/{job_id}/openings : Create Job Openings in Greenhouse
  • PATCH https://harvest.greenhouse.io/v1/jobs/{job_id}/openings/{id} : Update Job Opening Details

Offers

  • GET https://harvest.greenhouse.io/v1/offers : Get All Offers Made by an Organization
  • GET https://harvest.greenhouse.io/v1/offers/{id} : Retrieve Offer by ID

Offices

  • POST https://harvest.greenhouse.io/v1/offices : Create a New Office
  • PATCH https://harvest.greenhouse.io/v1/offices/{id} : Edit Office Basic Information

Prospect Pools

  • GET https://harvest.greenhouse.io/v1/prospect_pools : List Organization's Prospect Pools
  • GET https://harvest.greenhouse.io/v1/prospect_pools/{id} : Retrieve Prospect Pool

Prospects

  • POST https://harvest.greenhouse.io/v1/prospects : Create a New Prospect in Greenhouse

Rejection Reasons

  • GET https://harvest.greenhouse.io/v1/rejection_reasons : List Organization's Rejection Reasons

Scheduled Interviews

  • GET https://harvest.greenhouse.io/v1/scheduled_interviews : List Scheduled Interviews for an Organization
  • DELETE https://harvest.greenhouse.io/v1/scheduled_interviews/{id} : Delete a Scheduled Interview by ID
  • POST https://harvest.greenhouse.io/v2/scheduled_interviews : Create a New Scheduled Interview
  • PATCH https://harvest.greenhouse.io/v2/scheduled_interviews/{id} : Update a Scheduled Interview

Schools

  • GET https://harvest.greenhouse.io/v1/schools : List Organization's Schools

Scorecards

  • GET https://harvest.greenhouse.io/v1/scorecards : List Organization's Scorecards
  • GET https://harvest.greenhouse.io/v1/scorecards/{id} : Retrieve Scorecard

Sources

  • GET https://harvest.greenhouse.io/v1/sources : List Organization's Sources Grouped by Strategy

Tags

  • POST https://harvest.greenhouse.io/v1/tags/candidate : Add a New Candidate Tag to Organization
  • DELETE https://harvest.greenhouse.io/v1/tags/candidate/{tag id} : Remove Candidate Tag from Organization

Tracking Links

  • GET https://harvest.greenhouse.io/v1/tracking_links/{token} : Retrieve Tracking Link Data

User Roles

  • GET https://harvest.greenhouse.io/v1/user_roles : List Organization's Roles for User Assignment

Users

  • POST https://harvest.greenhouse.io/v1/users : Create a New User with Basic Permissions
  • PATCH https://harvest.greenhouse.io/v1/users/permission_level : Change User Permission Level to Basic
  • GET https://harvest.greenhouse.io/v1/users/{id} : Retrieve User Details
  • POST https://harvest.greenhouse.io/v1/users/{id}/email_addresses : Create Unverified Email Address for User
  • DELETE https://harvest.greenhouse.io/v1/users/{id}/permissions/future_jobs : Delete User's Future Job Permission
  • POST https://harvest.greenhouse.io/v1/users/{id}/permissions/jobs : Create Job Permission for User
  • GET https://harvest.greenhouse.io/v1/users/{user_id}/pending_approvals : Get Pending Approvals for User
  • PATCH https://harvest.greenhouse.io/v2/users/ : Edit User's Basic Information
  • PATCH https://harvest.greenhouse.io/v2/users/disable : Disable a User
  • PATCH https://harvest.greenhouse.io/v2/users/enable : Enable a User in Greenhouse

Job Posts (v2)

  • PATCH https://harvest.greenhouse.io/v2/job_posts/{id} : Update Job Post Properties
  • PATCH https://harvest.greenhouse.io/v2/job_posts/{id}/status : Update Job Post Status

Jobs (v2)

  • DELETE https://harvest.greenhouse.io/v2/jobs/{job_id}/openings : Delete Job Openings

Greenhouse API FAQs

How do I generate an API key in Greenhouse?

  • Answer: To generate an API key in Greenhouse:some text
    1. Click the Configure icon on your navigation bar.
    2. Navigate to Dev Center > API Credential Management.
    3. Click Create New API Key.
    4. Select the API type (e.g., Harvest) and provide a description.
    5. Click Create and copy the generated API key to a secure location.
  • Source: Create a Harvest API key for an integration – Greenhouse Support

What authentication method does the Greenhouse API use?

  • Answer: The Greenhouse API uses HTTP Basic Authentication. The API key serves as the username, and the password should be left blank. Include the 'Authorization' header in your HTTP requests, formatted as 'Basic {Base64EncodedAPIKey:}'.
  • Source: Harvest API | Greenhouse - Greenhouse Software

Are there rate limits for the Greenhouse API?

Can I retrieve candidate information using the Greenhouse API?

Does the Greenhouse API support webhooks?

  • Answer: Yes, Greenhouse supports webhooks, allowing you to receive real-time notifications for specific events, such as candidate application submissions or status changes.
  • Source: Developer Resources | Greenhouse

Get Started with Greenhouse API Integration

For quick and seamless integration with Greenhouse API, Knit API offers a convenient solution. It’s AI powered integration platform allows you to build any Greenhouse API Integration use case. By integrating with Knit just once, you can integrate with multiple other CRMs, HRIS, Accounting, and other systems in one go with a unified approach. Knit takes care of all the authentication, authorization, and ongoing integration maintenance. This approach not only saves time but also ensures a smooth and reliable connection to Greenhouse API.‍

To sign up for free, click here. To check the pricing, see our pricing page.

#1 in Ease of Integrations

Trusted by businesses to streamline and simplify integrations seamlessly with GetKnit.