Greenhouse
Available Greenhouse triggers for automating workflows
Greenhouse provides 8 triggers for automating workflows based on events.
Trigger workflow when a candidate is hired
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (hire_candidate) |
payload | object | payload output from the tool |
↳ application | object | application output from the tool |
↳ id | number | Application ID |
↳ status | string | Application status |
↳ prospect | boolean | Whether the applicant is a prospect |
↳ applied_at | string | When the application was submitted |
↳ url | string | Application URL in Greenhouse |
↳ current_stage | object | current_stage output from the tool |
↳ id | number | Current stage ID |
↳ name | string | Current stage name |
↳ candidate | object | candidate output from the tool |
↳ id | number | Candidate ID |
↳ first_name | string | First name |
↳ last_name | string | Last name |
↳ title | string | Current title |
↳ company | string | Current company |
↳ email_addresses | json | Email addresses |
↳ phone_numbers | json | Phone numbers |
↳ recruiter | json | Assigned recruiter |
↳ coordinator | json | Assigned coordinator |
↳ jobs | json | Associated jobs (array) |
↳ offer | object | offer output from the tool |
↳ id | number | Offer ID |
↳ version | number | Offer version |
↳ starts_at | string | Offer start date |
↳ custom_fields | json | Offer custom fields |
↳ custom_fields | json | Application custom fields |
Trigger workflow when a candidate is rejected
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (reject_candidate) |
payload | object | payload output from the tool |
↳ application | object | application output from the tool |
↳ id | number | Application ID |
↳ status | string | Application status (rejected) |
↳ prospect | boolean | Whether the applicant is a prospect |
↳ applied_at | string | When the application was submitted |
↳ rejected_at | string | When the candidate was rejected |
↳ url | string | Application URL in Greenhouse |
↳ current_stage | object | current_stage output from the tool |
↳ id | number | Stage ID where rejected |
↳ name | string | Stage name where rejected |
↳ candidate | object | candidate output from the tool |
↳ id | number | Candidate ID |
↳ first_name | string | First name |
↳ last_name | string | Last name |
↳ email_addresses | json | Email addresses |
↳ phone_numbers | json | Phone numbers |
↳ jobs | json | Associated jobs (array) |
↳ rejection_reason | json | Rejection reason object with id, name, and type fields |
↳ rejection_details | json | Rejection details with custom fields |
↳ custom_fields | json | Application custom fields |
Trigger workflow when a candidate changes interview stages
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (candidate_stage_change) |
payload | object | payload output from the tool |
↳ application | object | application output from the tool |
↳ id | number | Application ID |
↳ status | string | Application status |
↳ prospect | boolean | Whether the applicant is a prospect |
↳ applied_at | string | When the application was submitted |
↳ url | string | Application URL in Greenhouse |
↳ current_stage | object | current_stage output from the tool |
↳ id | number | Current stage ID |
↳ name | string | Current stage name |
↳ interviews | json | Interviews in this stage |
↳ candidate | object | candidate output from the tool |
↳ id | number | Candidate ID |
↳ first_name | string | First name |
↳ last_name | string | Last name |
↳ title | string | Current title |
↳ company | string | Current company |
↳ email_addresses | json | Email addresses |
↳ phone_numbers | json | Phone numbers |
↳ jobs | json | Associated jobs (array) |
↳ custom_fields | json | Application custom fields |
Trigger workflow when a new job is created
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (job_created) |
Trigger workflow when a job is updated
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (job_updated) |
Trigger workflow when a new application is submitted
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (new_candidate_application) |
payload | object | payload output from the tool |
↳ application | object | application output from the tool |
↳ id | number | Application ID |
↳ status | string | Application status |
↳ prospect | boolean | Whether the applicant is a prospect |
↳ applied_at | string | When the application was submitted |
↳ url | string | Application URL in Greenhouse |
↳ current_stage | object | current_stage output from the tool |
↳ id | number | Current stage ID |
↳ name | string | Current stage name |
↳ candidate | object | candidate output from the tool |
↳ id | number | Candidate ID |
↳ first_name | string | First name |
↳ last_name | string | Last name |
↳ title | string | Current title |
↳ company | string | Current company |
↳ created_at | string | When the candidate was created |
↳ email_addresses | json | Email addresses |
↳ phone_numbers | json | Phone numbers |
↳ tags | json | Candidate tags |
↳ jobs | json | Associated jobs (array) |
↳ answers | json | Application question answers |
↳ attachments | json | Application attachments |
↳ custom_fields | json | Application custom fields |
Trigger workflow when a new offer is created
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type (offer_created) |
payload | object | payload output from the tool |
↳ id | number | Offer ID |
↳ application_id | number | Associated application ID |
↳ job_id | number | Associated job ID |
↳ user_id | number | User who created the offer |
↳ version | number | Offer version number |
↳ sent_on | string | When the offer was sent |
↳ resolved_at | string | When the offer was resolved |
↳ start_date | string | Offer start date |
↳ notes | string | Offer notes |
↳ offer_status | string | Offer status |
↳ custom_fields | json | Custom field values |
Trigger on whichever event types you select for this URL in Greenhouse. Sim does not filter deliveries for this trigger.
| Parameter | Type | Required | Description |
|---|
secretKey | string | No | When set, requests must include a valid Signature header (HMAC-SHA256). If left empty, the endpoint does not verify signatures—only use on a private URL you fully control. |
| Parameter | Type | Description |
|---|
applicationId | number | Application id when present (payload.application.id or flat payload.application_id on offers) |
candidateId | number | Candidate id when payload.application.candidate.id is present |
jobId | number | Job id from payload.job.id or flat payload.job_id when present |
action | string | The webhook event type |
payload | json | Full event payload |