Recruitee
App · Jobs & Hiring · 20 actions
Track hiring in Recruitee: find and create candidates, move them through a job's pipeline, and raise tasks for the hiring team.
Actions
| Action | What it does |
|---|---|
| Add candidate note | Leave a note on a candidate's profile. |
| Add candidate to job | Place an existing candidate onto a job or into a talent pool, at the first stage of its pipeline. |
| Create candidate | Add a candidate to the company, optionally placing them onto one or more jobs straight away. |
| Create task | Raise a task for the hiring team, optionally about a candidate and due at a given time. |
| Delete candidate | Permanently delete a candidate, along with their placements, notes and tasks. |
| Disqualify candidate | Disqualify a candidate on one job, citing one of the company's disqualify reasons. |
| Get candidate | Read one candidate's full profile, including the jobs they are placed on. |
| Get job | Read one job, including its pipeline and candidate counts. |
| List candidate notes | Read the notes the hiring team has left on a candidate. |
| List candidates | List candidates, newest first, optionally narrowed by a search phrase, a job, or whether they are still in the running. |
| List disqualify reasons | List the reasons this company can cite when disqualifying a candidate, with the IDs the disqualify action needs. |
| List job candidates | List the candidates placed on a job. |
| List job stages | List a job's pipeline stages with their IDs. |
| List jobs | List the company's jobs and talent pools, optionally filtered by status or department. |
| List tasks | List the hiring team's tasks. |
| Move candidate to stage | Move a candidate to another stage of the job they are on. |
| Remove candidate from job | Take a candidate off a job. |
| Requalify candidate | Put a disqualified candidate back into the running on that job. |
| Tag candidate | Add tags to a candidate. |
| Update candidate | Change a candidate's name, contact details or cover letter. |
Add candidate note
Leave a note on a candidate's profile.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate to note.
- Note
bodytextRequired - The note text.
Outputs
bodytext- The note text as stored.
candidate_idnumber- Candidate ID.
noteobjectnote_idnumber- New note ID.
statustext- Status of the action execution ("success" on success).
Example output
{
"body": "Strong portfolio.",
"candidate_id": 3547,
"note": {
"body": "Strong portfolio.",
"id": 4
},
"note_id": 4,
"status": "success"
}Add candidate to job
Place an existing candidate onto a job or into a talent pool, at the first stage of its pipeline.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate to place.
- Job
offer_idnumber - The job to act on.
- Talent pool ID
talent_pool_idnumber - Add the candidate to this talent pool instead of a job. Supply either this or a job.
Outputs
candidate_idnumber- Candidate ID.
offer_idnumber- Job ID.
placementobjectplacement_idnumber- New placement ID.
stage_idnumber- The stage the candidate landed in.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate_id": 3547,
"offer_id": 3349,
"placement": {
"candidate_id": 3547,
"id": 63246
},
"placement_id": 63246,
"stage_id": 39299,
"status": "success"
}Create candidate
Add a candidate to the company, optionally placing them onto one or more jobs straight away.
Inputs
- Full name
nametextRequired - The candidate's full name.
- Email addresses
emailslist - One or more email addresses for the candidate.
- Phone numbers
phoneslist - One or more phone numbers for the candidate.
- Jobs
offer_idslist - Jobs to place the candidate on immediately. Leave empty to create the profile without applying them to anything.
- Cover letter
cover_lettertext - Cover letter text to store on the profile.
Outputs
candidateobjectcandidate_idnumber- New candidate ID.
candidate_nametext- Candidate name.
emailslist- The email addresses stored on the candidate.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate": {
"id": 3548,
"name": "Jane Doe"
},
"candidate_id": 3548,
"candidate_name": "Jane Doe",
"emails": [
"jane@example.com"
],
"status": "success"
}Create task
Raise a task for the hiring team, optionally about a candidate and due at a given time.
Inputs
- Title
titletextRequired - What needs doing.
- Description
descriptiontext - Any detail to go with the task.
- Candidate ID
candidate_idnumber - Attach the task to this candidate.
- Due
due_datedate and time - When the task is due.
- Time zone
timezonetext - Time zone the due date is written in, such as 'Europe/London'. Defaults to UTC.
- Assign to
admin_idslist - Hiring team members to assign the task to.
Outputs
due_datetext- When it is due.
statustext- Status of the action execution ("success" on success).
taskobjecttask_idnumber- New task ID.
titletext- Task title.
Example output
{
"due_date": "2026-09-10T09:00:00.000000Z",
"status": "success",
"task": {
"id": 5622,
"title": "Send offer letter"
},
"task_id": 5622,
"title": "Send offer letter"
}Delete candidate
Permanently delete a candidate, along with their placements, notes and tasks. This cannot be undone.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate to delete.
Outputs
candidate_idnumber- The candidate that was deleted.
deletedtrue/false- Always true on success.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate_id": 3547,
"deleted": true,
"status": "success"
}Disqualify candidate
Disqualify a candidate on one job, citing one of the company's disqualify reasons. Their other jobs are untouched.
Inputs
- Placement ID
placement_idnumberRequired - ID of the placement - the row linking one candidate to one job. Run 'List job candidates' to find it.
- Reason
disqualify_reason_idnumberRequired - Why the candidate is being disqualified.
Outputs
disqualified_attext- When the disqualification was recorded.
disqualify_reason_idnumber- The reason that was cited.
placementobjectplacement_idnumber- Placement ID.
statustext- Status of the action execution ("success" on success).
Example output
{
"disqualified_at": "2026-09-04T10:00:00.000000Z",
"disqualify_reason_id": 123,
"placement": {
"id": 63246
},
"placement_id": 63246,
"status": "success"
}Get candidate
Read one candidate's full profile, including the jobs they are placed on.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate to read.
Outputs
candidateobjectcandidate_idnumber- Candidate ID.
candidate_nametext- Candidate name.
referenceslist- The related records Recruitee returns alongside the candidate, such as the jobs behind their placements.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate": {
"id": 3547,
"name": "Jane Doe"
},
"candidate_id": 3547,
"candidate_name": "Jane Doe",
"references": [],
"status": "success"
}Get job
Read one job, including its pipeline and candidate counts.
Inputs
- Job
offer_idnumberRequired - The job to act on.
Outputs
offerobjectoffer_idnumber- Job ID.
offer_statustext- The job's own status - draft, published, internal, closed or archived.
statustext- Status of the action execution ("success" on success).
titletext- Job title.
Example output
{
"offer": {
"id": 3349,
"title": "Senior Engineer"
},
"offer_id": 3349,
"offer_status": "published",
"status": "success",
"title": "Senior Engineer"
}List candidate notes
Read the notes the hiring team has left on a candidate.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate whose notes to read.
Outputs
candidate_idnumber- Candidate ID.
countnumber- How many were returned.
noteslist- The notes on the candidate.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate_id": 3547,
"count": 1,
"notes": [
{
"body": "Strong portfolio.",
"id": 4
}
],
"status": "success"
}List candidates
List candidates, newest first, optionally narrowed by a search phrase, a job, or whether they are still in the running.
Inputs
- Search
querytext - Match against a candidate's name or the job they applied to. Leave empty to list everyone.
- Job
offer_idnumber - The job to act on.
- Limit
limitnumber - How many results to return (1-1000).From 1 to 1000. Default:
25. - Skip
offsetnumber - Skip this many candidates before returning results, for paging through a long list.At least 0. Default:
0. - Sort by
sorttext - Order the results.One of:
by_date(Newest first),by_last_message(Most recently messaged). - Only still in the running
qualifiedtrue/false - Return only candidates who are not disqualified.
- Only disqualified
disqualifiedtrue/false - Return only candidates who were disqualified.
- Added after
created_afterdate - Only candidates added on or after this date.
Outputs
candidateslist- The candidates that matched.
countnumber- How many were returned.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidates": [
{
"emails": [
"jane@example.com"
],
"id": 3547,
"name": "Jane Doe"
}
],
"count": 1,
"status": "success"
}List disqualify reasons
List the reasons this company can cite when disqualifying a candidate, with the IDs the disqualify action needs.
Inputs
None.
Outputs
countnumber- How many there are.
disqualify_reasonslist- The reasons this company has configured.
statustext- Status of the action execution ("success" on success).
Example output
{
"count": 1,
"disqualify_reasons": [
{
"id": 123,
"name": "Withdrew"
}
],
"status": "success"
}List job candidates
List the candidates placed on a job. Each result carries the placement ID that the stage, disqualify and remove actions need.
Inputs
- Job
offer_idnumberRequired - The job to act on.
- Stage ID
stage_idnumber - Only candidates sitting in this stage. Run 'List job stages' to find the ID.
- Only still in the running
qualifiedtrue/false - Exclude disqualified candidates.
- Only disqualified
disqualifiedtrue/false - Return only disqualified candidates.
- Sort by
sort_bytext - Order the results.One of:
created_at(Applied),last_activity_at(Last activity),rating. - Sort order
sort_ordertext - Ascending or descending.One of:
asc(Ascending),desc(Descending).
Outputs
countnumber- How many were returned.
offer_idnumber- Job ID.
placementslist- One placement per candidate on the job.
statustext- Status of the action execution ("success" on success).
Example output
{
"count": 1,
"offer_id": 3349,
"placements": [
{
"candidate_id": 3547,
"id": 63246,
"stage_id": 39299
}
],
"status": "success"
}List job stages
List a job's pipeline stages with their IDs. Stage IDs differ per job, so this is how you find the one a stage move needs.
Inputs
- Job
offer_idnumberRequired - The job to act on.
Outputs
countnumber- How many stages there are.
offer_idnumber- Job ID.
stageslist- The stages of this job's pipeline, in order.
statustext- Status of the action execution ("success" on success).
Example output
{
"count": 1,
"offer_id": 3349,
"stages": [
{
"category": "applied",
"id": 39299,
"name": "Applied"
}
],
"status": "success"
}List jobs
List the company's jobs and talent pools, optionally filtered by status or department.
Inputs
- Statuses
statuseslist - Only jobs in these statuses. Leave empty for all of them.One or more of:
draft,published,internal,closed,archived. - Departments
department_idslist - Only jobs in these departments.
- Extra detail
includelist - Extra fields to load with each job. Jobs come back without their description and counters unless asked for.One or more of:
description,requirements,highlight,work_models(Work models),salary,dynamic_fields(Dynamic fields),follower_ids(Follower ids),location_ids(Location ids),requisition_ids(Requisition ids),tags, and 3 more. - Limit
limitnumber - How many results to return (1-1000).From 1 to 1000. Default:
25. - Page
pagenumber - Page of results, starting at 1.At least 1. Default:
1.
Outputs
countnumber- How many were returned.
offerslist- The jobs that matched.
statustext- Status of the action execution ("success" on success).
Example output
{
"count": 1,
"offers": [
{
"id": 3349,
"status": "published",
"title": "Senior Engineer"
}
],
"status": "success"
}List tasks
List the hiring team's tasks.
Inputs
- Whose tasks
scopetext - Whose tasks to list.One of:
my(Assigned to me),unassigned,all(Everyone's). - Status
statustext - Only done, or only outstanding, tasks.One of:
completed,uncompleted(Not done yet). - Sort by
sort_bytext - Order the results.One of:
due_date(Due date),created_at(Created),completed_at(Completed). - Sort order
sort_ordertext - Ascending or descending.One of:
asc(Ascending),desc(Descending). - Limit
limitnumber - How many results to return (1-1000).From 1 to 1000. Default:
25. - Page
pagenumber - Page of results, starting at 1.At least 1. Default:
1.
Outputs
countnumber- How many were returned.
statustext- Status of the action execution ("success" on success).
taskslist- The tasks that matched.
Example output
{
"count": 1,
"status": "success",
"tasks": [
{
"id": 5622,
"title": "Send offer letter"
}
]
}Move candidate to stage
Move a candidate to another stage of the job they are on. Takes the placement ID, not the candidate ID.
Inputs
- Placement ID
placement_idnumberRequired - ID of the placement - the row linking one candidate to one job. Run 'List job candidates' to find it.
- Stage ID
stage_idnumberRequired - The stage to move them into. Run 'List job stages' for the job to find it - stage IDs differ per job.
- Put at top of stage
proceedtrue/false - Place the candidate at the top of the new stage rather than the bottom.
Outputs
candidate_idnumber- Candidate ID.
placementobjectplacement_idnumber- Placement ID.
stage_idnumber- The stage now set.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate_id": 3547,
"placement": {
"id": 63246,
"stage_id": 39300
},
"placement_id": 63246,
"stage_id": 39300,
"status": "success"
}Remove candidate from job
Take a candidate off a job. The candidate's own profile stays.
Inputs
- Placement ID
placement_idnumberRequired - ID of the placement - the row linking one candidate to one job. Run 'List job candidates' to find it.
Outputs
deletedtrue/false- Always true on success.
placement_idnumber- The placement that was removed.
statustext- Status of the action execution ("success" on success).
Example output
{
"deleted": true,
"placement_id": 63246,
"status": "success"
}Requalify candidate
Put a disqualified candidate back into the running on that job.
Inputs
- Placement ID
placement_idnumberRequired - ID of the placement - the row linking one candidate to one job. Run 'List job candidates' to find it.
Outputs
disqualified_attext- Empty once the candidate is back in the running.
placementobjectplacement_idnumber- Placement ID.
stage_idnumber- The stage they returned to.
statustext- Status of the action execution ("success" on success).
Example output
{
"disqualified_at": null,
"placement": {
"id": 63246
},
"placement_id": 63246,
"stage_id": 39299,
"status": "success"
}Tag candidate
Add tags to a candidate. A tag the company does not have yet is created.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate to tag.
- Tags
tagslistRequired - One or more tags to add.
Outputs
candidate_idnumber- Candidate ID.
statustext- Status of the action execution ("success" on success).
tag_nameslist- Just the names of those tags.
tagslist- The tags now on the candidate.
Example output
{
"candidate_id": 3547,
"status": "success",
"tag_names": [
"Shortlist"
],
"tags": [
{
"id": 148,
"name": "Shortlist"
}
]
}Update candidate
Change a candidate's name, contact details or cover letter. Anything left empty is left as it is.
Inputs
- Candidate ID
candidate_idnumberRequired - ID of the candidate to update.
- Full name
nametext - Replace the candidate's name.
- Email addresses
emailslist - Replace the stored email addresses with these ones.
- Phone numbers
phoneslist - Replace the stored phone numbers with these ones.
- Cover letter
cover_lettertext - Replace the cover letter text.
Outputs
candidateobjectcandidate_idnumber- Candidate ID.
candidate_nametext- Candidate name.
statustext- Status of the action execution ("success" on success).
Example output
{
"candidate": {
"id": 3547,
"name": "Jane Doe"
},
"candidate_id": 3547,
"candidate_name": "Jane Doe",
"status": "success"
}