This article is intended for customers using the Candidate Hired web hook to export candidates to an HRIS or other downstream system. We will cover each document type that is included in the export and distinguish the differences between them, to help developers understand the appropriate document type(s) to retrieve.
In this article, we will cover:
- Candidate Profile File Attachment Types
- Candidate Hired Web Hook Payload
- Add Resume, Cover Letter, or “Other” Document to Existing Candidate
- Add Take Home Test Document to Existing Candidate
- Add offer_letter Document Type to Existing Candidate
- Add signed_offer_letter Document Type to Existing Candidate
- Add Offer Packet Document to Existing Candidate
- Retrieve Documents from Candidate Profile
Candidate Profile File Attachment Types
There are several file attachment types that can be associated with candidate profiles:
- Resume
- Cover Letter
- Take Home Test
- Other
- Offer Letter
- Signed Offer Letter
- Offer Packet
In the Greenhouse Recruiting interface, all of these attachments are available via the Candidate Details tab in the All Attachments section. This article outlines how these documents are represented in the web hook payload and how to test adding or retrieving each file type.
Candidate Hired Web Hook Payload
The web hook can include each of the following document types. If the candidate has been hired on multiple jobs, the payload may include more than one of each document type:
Resume (“type”: “resume”)
Example:
"attachments": [
{
"filename": "Cindy Bananas resume.docx",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/141/821/232/original/Cindy%20Bananas%20resume.docx?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=11SDNrS%2Ba8Xv2rkf8tNANQi3Msc%3D",
"type": "resume"
}
],
Resume Cover Letter (“type”: “cover_letter”)
Example:"attachments": [
{
"filename": "Cover_Letter_Template_(pdf).pdf",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/144/217/287/original/Cover_Letter_Template_%28pdf%29.pdf?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=PPWwt8N8R5MniDCgxVu5%2B4fER8g%3D",
"type": "cover_letter"
},
],
Take Home Test (“type”: “take_home_test”)
Example:
"attachments": [
{
"filename": "File1.docx",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/144/217/491/original/File1.docx?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=3eF7ycK7y8PQUT4uEFCswNe7fAY%3D",
"type": "take_home_test"
},
],
Offer Letter (“type”: “offer_letter”)
Word and PDF versions of the unsigned offer letter to be sent to the candidate for signature.
Example:
"attachments": [
{
"filename": "Offer_Document_Cindy_Bananas.docx",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/144/218/016/original/Offer_Document_Cindy_Bananas.docx?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=sDyX27SRU%2BW6BotfHE%2F%2B%2FVcES5s%3D",
"type": "offer_letter"
},
],
Signed Offer Letter (“type”: “offer_letter_signed”)
The final and fully executed offer document.
Example:
"attachments": [
{
"filename": "Offer_Doc-signed.pdf",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/144/218/330/original/Offer_Doc-signed.pdf?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=gRjpxWRZukDS0BdXGf1jsnnqawk%3D",
"type": "signed_offer_letter"
},
],
Offer Packet (“type”: “offer_packet”)
Aggregation of data from the candidate, application, offer, scorecard, and attachment objects.
Note: In order to ensure the data in the packet is always up to date, the Offer Packet regenerates every time a change is made to data in the candidate, application, offer, scorecard, or attachment objects. This also causes the previous document to expire/become inaccessible.
Example:
"attachments": [
{
"filename": "Cindy_Bananas_-_Offer_Packet_2019-04-09_(Private).pdf",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/144/219/098/original/Cindy_Bananas_-_Offer_Packet_2019-04-09_%28Private%29.pdf?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=T0taxRZkK2MQhcjKwon1VaVLZMU%3D",
"type": "offer_packet"
},
],
Other (“type”: “admin_only”)
Customers may use this attachment type for a candidate’s portfolio, custom take home tests, or other documents that do not fall under the above categories and that are uploaded manually to Greenhouse.
Example:
"attachments": [
{
"filename": "Other_Doc_Test.docx",
"url": "https://prod-heroku.s3.amazonaws.com/person_attachments/data/144/217/460/original/Other_Doc_Test.docx?AWSAccessKeyId=AKIAI2HNOZGNEUVWYNFQ&Expires=1557437095&Signature=agW0H5Xefy%2FXkeh0K6Z0nE8neSs%3D",
"type": "other"
},
],
Add Resume, Cover Letter, or “Other” Document to Existing Candidate
You can add any document to an existing Candidate in Greenhouse by navigating to the Candidate Details tab > All Attachments section:
You can add any document to an existing Candidate via the API with a POST: Add Attachment request including either the base64 encoded file content or a URL where the file is hosted:
curl -X POST \
https://harvest.greenhouse.io/v1/candidates/[candidate_id]/attachments \
-H 'Authorization: Basic ***********' \
-H 'Content-Type: application/json' \
-H 'on-behalf-of: 1049756' \
-d '{
"filename" : "resume.pdf",
"type" : "resume",
"content" : "JVBERi0xLjMKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPD…",
"content_type" : "application/pdf"
}'
- Public: Visible to Site Admins, Job Admins, or Interviewers who are assigned to the job
- Admin Only: Visible to Site Admins and Job Admins who are assigned to the job
- Private: Visible only to Site Admins and Job Admins who also have the advanced "Can see private notes, salary info, manage offers, and approve jobs/offers" permission
Please refer to the following Help Center article for more details on each visibility setting: Access Candidate Attachments
Add Take Home Test Document to Existing Candidate
- Take home tests submitted by a candidate through a special Greenhouse Recruiting Take Home Test stage will be added to the candidate profile automatically.
- Take Home Tests can also be manually uploaded to a Take Home Test stage by a Greenhouse Recruiting user (if the test is submitted by email).
Submitted by candidate through Greenhouse Recruiting link:
Option to upload manually (if not submitted through Greenhouse Recruiting link):
Note: In addition to Candidate Details tab, you can also access the Take Home Test document via the Take Home Test Interview Kit (accessed by clicking Take Home Test):
Take Home Test documents from third-party integrations (for example, HackerRank) will not be added to the Candidate Profile; instead, results are accessible via a URL to the partner platform.
Add offer_letter Document Type to Existing Candidate
Move the candidate to the Offer stage and navigate to the Offer Details page.
Click Create Offer and fill out the relevant Offer Details. Click Save when finished.
Select Upload to manually upload an offer document that was created outside of Greenhouse Recruiting, or Generate to populate a Greenhouse Recruiting Offer Letter template using the Offer Details you provided in the previous step.
|
|
Add signed_offer_letter Document Type to Existing Candidate
The signed offer letter document type is automatically added to Greenhouse when a Candidate signs a document through the Greenhouse Recruiting / DocuSign integration, or when a signed offer letter is uploaded manually to the candidate profile on the Offer Details tab.
![]() |
![]() |
Add Offer Packet Document to Existing Candidate
This feature is unavailable because offer packets are automatically generated by Greenhouse Recruiting.
Retrieve Documents from Candidate Profile
The above documents are included in the attachments array in the Candidate Hired web hook, or can be returned (also in the attachments array) via the Harvest API (GET: Retrieve Candidate). We recommend the latter for pulling the Offer Packet to ensure you have the latest active link.