Ashby

Manage candidates, jobs, and applications in Ashby

Ashby is an all-in-one recruiting platform that combines an applicant tracking system (ATS), CRM, scheduling, and analytics to help teams hire more effectively.

With Ashby, you can:

  • List and search candidates: Browse your full candidate pipeline or search by name and email to quickly find specific people
  • Create candidates: Add new candidates to your Ashby organization with contact details
  • View candidate details: Retrieve full candidate profiles including tags, email, phone, and timestamps
  • Add notes to candidates: Attach notes to candidate records to capture feedback, context, or follow-up items
  • List and view jobs: Browse all open, closed, and archived job postings with location and department info
  • List applications: View all applications across your organization with candidate and job details, status tracking, and pagination

The Ashby block also supports webhook triggers that automatically start workflows in response to Ashby events. Available triggers include Application Submitted, Candidate Stage Change, Candidate Hired, Candidate Deleted, Job Created, and Offer Created. Webhooks are fully managed — Sim automatically creates the webhook in Ashby when you save the trigger and deletes it when you remove it, so there's no manual webhook configuration needed. Just provide your Ashby API key (with apiKeysWrite permission) and select the event type.

In Sim, the Ashby integration enables your agents to programmatically manage your recruiting pipeline. Agents can search for candidates, create new candidate records, add notes after interviews, and monitor applications across jobs. This allows you to automate recruiting workflows like candidate intake, interview follow-ups, pipeline reporting, and cross-referencing candidates across roles.

Usage Instructions

Integrate Ashby into the workflow. Manage candidates (list, get, create, update, search, tag), applications (list, get, create, change stage), jobs (list, get), job postings (list, get), offers (list, get), notes (list, create), interviews (list), and reference data (sources, tags, archive reasons, custom fields, departments, locations, openings, users).

Tools

ashby_add_candidate_tag

Adds a tag to a candidate in Ashby and returns the updated candidate.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to add the tag to
tagIdstringYesThe UUID of the tag to add

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_change_application_stage

Moves an application to a different interview stage. Requires an archive reason when moving to an Archived stage.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
applicationIdstringYesThe UUID of the application to update the stage of
interviewStageIdstringYesThe UUID of the interview stage to move the application to
archiveReasonIdstringNoArchive reason UUID. Required when moving to an Archived stage, ignored otherwise

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_create_application

Creates a new application for a candidate on a job. Optionally specify interview plan, stage, source, and credited user.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to consider for the job
jobIdstringYesThe UUID of the job to consider the candidate for
interviewPlanIdstringNoUUID of the interview plan to use (defaults to the job default plan)
interviewStageIdstringNoUUID of the interview stage to place the application in (defaults to first Lead stage)
sourceIdstringNoUUID of the source to set on the application
creditedToUserIdstringNoUUID of the user the application is credited to
createdAtstringNoISO 8601 timestamp to set as the application creation date (defaults to now)

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_create_candidate

Creates a new candidate record in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
namestringYesThe candidate full name
emailstringNoPrimary email address for the candidate
phoneNumberstringNoPrimary phone number for the candidate
linkedInUrlstringNoLinkedIn profile URL
githubUrlstringNoGitHub profile URL
websitestringNoPersonal website URL
sourceIdstringNoUUID of the source to attribute the candidate to
creditedToUserIdstringNoUUID of the Ashby user to credit with sourcing this candidate
createdAtstringNoBackdated creation timestamp in ISO 8601 (e.g. 2024-01-01T00:00:00Z). Defaults to now.
alternateEmailAddressesjsonNoArray of additional email address strings to add to the candidate, e.g. ["a@x.com","b@y.com"]

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_create_note

Creates a note on a candidate in Ashby. Supports plain text and HTML content (bold, italic, underline, links, lists, code).

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to add the note to
notestringYesThe note content. If noteType is text/html, supports: <b>, <i>, <u>, <a>, <ul>, <ol>, <li>, <code>, <pre>
noteTypestringNoContent type of the note: text/plain (default) or text/html
sendNotificationsbooleanNoWhether to send notifications to subscribed users (default false)
isPrivatebooleanNoWhether the note is private (only visible to the author)
createdAtstringNoBackdated creation timestamp in ISO 8601 (e.g. 2024-01-01T00:00:00Z). Defaults to now.

Output

ParameterTypeDescription
idstringCreated note UUID
createdAtstringISO 8601 creation timestamp
isPrivatebooleanWhether the note is private
contentstringNote content
authorobjectAuthor of the note
idstringAuthor user UUID
firstNamestringAuthor first name
lastNamestringAuthor last name
emailstringAuthor email

ashby_get_application

Retrieves full details about a single application by its ID.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
applicationIdstringYesThe UUID of the application to fetch

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_get_candidate

Retrieves full details about a single candidate by their ID.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to fetch

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_get_job

Retrieves full details about a single job by its ID.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
jobIdstringYesThe UUID of the job to fetch

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_get_job_posting

Retrieves full details about a single job posting by its ID.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
jobPostingIdstringYesThe UUID of the job posting to fetch
jobBoardIdstringNoOptional job board UUID. If omitted, returns posting for the external job board.
expandJobbooleanNoWhether to expand and include the related job object in the response

Output

ParameterTypeDescription
idstringJob posting UUID
titlestringJob posting title
descriptionPlainstringFull description in plain text
descriptionHtmlstringFull description in HTML
descriptionSocialstringShortened description for social sharing (max 200 chars)
descriptionPartsobjectDescription broken into opening, body, and closing sections
descriptionOpeningobjectOpening (from Job Boards theme settings)
htmlstringHTML content
plainstringPlain text content
descriptionBodyobjectMain description body
htmlstringHTML content
plainstringPlain text content
descriptionClosingobjectClosing (from Job Boards theme settings)
htmlstringHTML content
plainstringPlain text content
departmentNamestringDepartment name
teamNamestringTeam name
teamNameHierarchyarrayHierarchy of team names from root to team
jobIdstringAssociated job UUID
locationNamestringPrimary location name
locationIdsobjectPrimary and secondary location UUIDs
primaryLocationIdstringPrimary location UUID
secondaryLocationIdsarraySecondary location UUIDs
addressobjectPostal address of the posting location
postalAddressobjectStructured postal address
addressCountrystringCountry
addressRegionstringState or region
addressLocalitystringCity or locality
postalCodestringPostal code
streetAddressstringStreet address
isRemotebooleanWhether the posting is remote
workplaceTypestringWorkplace type (OnSite, Remote, Hybrid)
employmentTypestringEmployment type (FullTime, PartTime, Intern, Contract, Temporary)
isListedbooleanWhether publicly listed on the job board
suppressDescriptionOpeningbooleanWhether the theme opening is hidden on this posting
suppressDescriptionClosingbooleanWhether the theme closing is hidden on this posting
publishedDatestringISO 8601 published date
applicationDeadlinestringISO 8601 application deadline
externalLinkstringExternal link to the job posting
applyLinkstringDirect apply link
compensationobjectCompensation details for the posting
compensationTierSummarystringHuman-readable tier summary
summaryComponentsarrayStructured compensation components
summarystringComponent summary
compensationTypeLabelstringComponent type label (Salary, Commission, Bonus, Equity, etc.)
intervalstringPayment interval (e.g. annual, hourly)
currencyCodestringISO 4217 currency code
minValuenumberMinimum value
maxValuenumberMaximum value
shouldDisplayCompensationOnJobBoardbooleanWhether compensation is shown on the job board
applicationLimitCalloutHtmlstringHTML callout shown when the application limit is reached
updatedAtstringISO 8601 last update timestamp
jobobjectThe expanded job object, only present when the request was made with expandJob=true

ashby_get_offer

Retrieves full details about a single offer by its ID.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
offerIdstringYesThe UUID of the offer to fetch

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_list_applications

Lists all applications in an Ashby organization with pagination and optional filters for status, job, and creation date.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default 100)
statusstringNoFilter by application status: Active, Hired, Archived, or Lead
jobIdstringNoFilter applications by a specific job UUID
candidateIdstringNoFilter applications by a specific candidate UUID
createdAfterstringNoFilter to applications created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

ParameterTypeDescription
applicationsarrayList of applications
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_archive_reasons

Lists all archive reasons configured in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
includeArchivedbooleanNoWhether to include archived archive reasons in the response (default false)

Output

ParameterTypeDescription
archiveReasonsarrayList of archive reasons
idstringArchive reason UUID
textstringArchive reason text
reasonTypestringReason type (RejectedByCandidate, RejectedByOrg, Other)
isArchivedbooleanWhether the reason is archived

ashby_list_candidate_tags

Lists all candidate tags configured in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
includeArchivedbooleanNoWhether to include archived candidate tags (default false)
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
syncTokenstringNoSync token from a previous response to fetch only changed results
perPagenumberNoNumber of results per page (default 100)

Output

ParameterTypeDescription
tagsarrayList of candidate tags
idstringTag UUID
titlestringTag title
isArchivedbooleanWhether the tag is archived
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page
syncTokenstringSync token to use for incremental updates in future requests

ashby_list_candidates

Lists all candidates in an Ashby organization with cursor-based pagination.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default 100)
createdAfterstringNoOnly return candidates created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

ParameterTypeDescription
candidatesarrayList of candidates
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_custom_fields

Lists all custom field definitions configured in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default and max 100)
syncTokenstringNoOpaque token from a prior sync to fetch only items changed since then
includeArchivedbooleanNoWhen true, includes archived custom fields in results (default false)

Output

ParameterTypeDescription
customFieldsarrayList of custom field definitions
idstringCustom field UUID
titlestringCustom field title
isPrivatebooleanWhether the custom field is private
fieldTypestringField data type (MultiValueSelect, NumberRange, String, Date, ValueSelect, Number, Currency, Boolean, LongText, CompensationRange)
objectTypestringObject type the field applies to (Application, Candidate, Employee, Job, Offer, Opening, Talent_Project)
isArchivedbooleanWhether the custom field is archived
isRequiredbooleanWhether a value is required
selectableValuesarraySelectable values for MultiValueSelect fields (empty for other field types)
labelstringDisplay label
valuestringStored value
isArchivedbooleanWhether archived
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page
syncTokenstringOpaque sync token returned after the last page; pass on next sync

ashby_list_departments

Lists all departments in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default and max 100)
syncTokenstringNoOpaque token from a prior sync to fetch only items changed since then
includeArchivedbooleanNoWhen true, includes archived departments in results (default false)

Output

ParameterTypeDescription
departmentsarrayList of departments
idstringDepartment UUID
namestringDepartment name
externalNamestringCandidate-facing name used on job boards
isArchivedbooleanWhether the department is archived
parentIdstringParent department UUID
createdAtstringISO 8601 creation timestamp
updatedAtstringISO 8601 last update timestamp
extraDatajsonFree-form key-value metadata
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page
syncTokenstringOpaque sync token returned after the last page; pass on next sync

ashby_list_interviews

Lists interview schedules in Ashby, optionally filtered by application or interview stage.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
applicationIdstringNoThe UUID of the application to list interview schedules for
interviewStageIdstringNoThe UUID of the interview stage to list interview schedules for
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default 100)
createdAfterstringNoOnly return interview schedules created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

ParameterTypeDescription
interviewSchedulesarrayList of interview schedules
idstringInterview schedule UUID
statusstringSchedule status (NeedsScheduling, WaitingOnCandidateBooking, Scheduled, Complete, Cancelled, OnHold, etc.)
applicationIdstringAssociated application UUID
interviewStageIdstringInterview stage UUID
createdAtstringISO 8601 creation timestamp
updatedAtstringISO 8601 last update timestamp
interviewEventsarrayScheduled interview events on this schedule
idstringEvent UUID
interviewIdstringInterview template UUID
interviewScheduleIdstringParent schedule UUID
interviewerUserIdsarrayUser UUIDs of interviewers assigned to the event
createdAtstringEvent creation timestamp
updatedAtstringEvent last updated timestamp
startTimestringEvent start time
endTimestringEvent end time
feedbackLinkstringURL to submit feedback for the event
locationstringPhysical location
meetingLinkstringVirtual meeting URL
hasSubmittedFeedbackbooleanWhether any feedback has been submitted
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_job_postings

Lists all job postings in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
locationstringNoFilter by location name (case sensitive)
departmentstringNoFilter by department name (case sensitive)
listedOnlybooleanNoWhen true, only returns listed (publicly visible) job postings (default false)
jobBoardIdstringNoUUID of a specific job board to filter postings to. If omitted, returns postings on the primary external job board.

Output

ParameterTypeDescription
jobPostingsarrayList of job postings
idstringJob posting UUID
titlestringJob posting title
jobIdstringAssociated job UUID
departmentNamestringDepartment name
teamNamestringTeam name
locationNamestringPrimary location display name
locationIdsobjectPrimary and secondary location UUIDs
primaryLocationIdstringPrimary location UUID
secondaryLocationIdsarraySecondary location UUIDs
workplaceTypestringWorkplace type (OnSite, Remote, Hybrid)
employmentTypestringEmployment type (FullTime, PartTime, Intern, Contract, Temporary)
isListedbooleanWhether the posting is publicly listed
publishedDatestringISO 8601 published date
applicationDeadlinestringISO 8601 application deadline
externalLinkstringExternal link to the job posting
applyLinkstringDirect apply link for the job posting
compensationTierSummarystringCompensation tier summary for job boards
shouldDisplayCompensationOnJobBoardbooleanWhether compensation is shown on the job board
updatedAtstringISO 8601 last update timestamp

ashby_list_jobs

Lists all jobs in an Ashby organization. By default returns Open, Closed, and Archived jobs. Specify status to filter.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default 100)
statusstringNoFilter by job status: Open, Closed, Archived, or Draft
createdAfterstringNoOnly return jobs created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)
openedAfterstringNoOnly return jobs opened after this ISO 8601 timestamp
openedBeforestringNoOnly return jobs opened before this ISO 8601 timestamp
closedAfterstringNoOnly return jobs closed after this ISO 8601 timestamp
closedBeforestringNoOnly return jobs closed before this ISO 8601 timestamp

Output

ParameterTypeDescription
jobsarrayList of jobs
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_locations

Lists all locations configured in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default and max 100)
syncTokenstringNoOpaque token from a prior sync to fetch only items changed since then
includeArchivedbooleanNoWhen true, includes archived locations in results (default false)
includeLocationHierarchybooleanNoWhen true, includes location hierarchy components/regions (default false)

Output

ParameterTypeDescription
locationsarrayList of locations
idstringLocation UUID
namestringLocation name
externalNamestringCandidate-facing name used on job boards
isArchivedbooleanWhether the location is archived
isRemotebooleanWhether the location is remote (use workplaceType instead)
workplaceTypestringWorkplace type (OnSite, Hybrid, Remote)
parentLocationIdstringParent location UUID
typestringLocation component type (Location, LocationHierarchy)
addressobjectLocation postal address
addressCountrystringCountry
addressRegionstringState or region
addressLocalitystringCity or locality
postalCodestringPostal code
streetAddressstringStreet address
extraDatajsonFree-form key-value metadata
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page
syncTokenstringOpaque sync token returned after the last page; pass on next sync

ashby_list_notes

Lists all notes on a candidate with pagination support.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to list notes for
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page

Output

ParameterTypeDescription
notesarrayList of notes on the candidate
idstringNote UUID
contentstringNote content
isPrivatebooleanWhether the note is private
authorobjectNote author
idstringAuthor user UUID
firstNamestringFirst name
lastNamestringLast name
emailstringEmail address
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_offers

Lists all offers with their latest version in an Ashby organization.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page
createdAfterstringNoOnly return offers created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)
syncTokenstringNoOpaque token from a prior sync to fetch only items changed since then
applicationIdstringNoReturn only offers for the specified application UUID

Output

ParameterTypeDescription
offersarrayList of offers
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_openings

Lists all openings in Ashby with pagination.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default 100)
createdAfterstringNoOnly return openings created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

ParameterTypeDescription
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_list_sources

Lists all candidate sources configured in Ashby.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
includeArchivedbooleanNoWhen true, includes archived sources in results (default false)

Output

ParameterTypeDescription
sourcesarrayList of sources
idstringSource UUID
titlestringSource title
isArchivedbooleanWhether the source is archived
sourceTypeobjectSource type grouping
idstringSource type UUID
titlestringSource type title
isArchivedbooleanWhether archived

ashby_list_users

Lists all users in Ashby with pagination.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
cursorstringNoOpaque pagination cursor from a previous response nextCursor value
perPagenumberNoNumber of results per page (default 100)
includeDeactivatedbooleanNoWhen true, includes deactivated users in results (default false)

Output

ParameterTypeDescription
usersarrayList of users
moreDataAvailablebooleanWhether more pages of results exist
nextCursorstringOpaque cursor for fetching the next page

ashby_remove_candidate_tag

Removes a tag from a candidate in Ashby and returns the updated candidate.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to remove the tag from
tagIdstringYesThe UUID of the tag to remove

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

ashby_search_candidates

Searches for candidates by name and/or email with AND logic. Results are limited to 100 matches. Use candidate.list for full pagination.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
namestringNoCandidate name to search for (combined with email using AND logic)
emailstringNoCandidate email to search for (combined with name using AND logic)

Output

ParameterTypeDescription
candidatesarrayMatching candidates (max 100 results)

ashby_update_candidate

Updates an existing candidate record in Ashby. Only provided fields are changed.

Input

ParameterTypeRequiredDescription
apiKeystringYesAshby API Key
candidateIdstringYesThe UUID of the candidate to update
namestringNoUpdated full name
emailstringNoUpdated primary email address
phoneNumberstringNoUpdated primary phone number
linkedInUrlstringNoLinkedIn profile URL
githubUrlstringNoGitHub profile URL
websiteUrlstringNoPersonal website URL
alternateEmailstringNoAn additional email address to add to the candidate
sourceIdstringNoUUID of the source to attribute the candidate to
creditedToUserIdstringNoUUID of the Ashby user to credit with sourcing this candidate
createdAtstringNoBackdated creation timestamp in ISO 8601. Only updatable if originally backdated.
sendNotificationsbooleanNoWhether to send a notification when the source is updated (default true)
socialLinksjsonNoArray of social link objects to set on the candidate, e.g. [{"type":"LinkedIn","url":"https://..."}]. Replaces existing social links.

Output

ParameterTypeDescription
candidatesjsonList of candidates with rich fields (id, name, primaryEmailAddress, primaryPhoneNumber, emailAddresses[], phoneNumbers[], socialLinks[], linkedInUrl, githubUrl, profileUrl, position, company, school, timezone, location with locationComponents[], tags[], applicationIds[], customFields[], resumeFileHandle, fileHandles[], source with sourceType, creditedToUser, fraudStatus, createdAt, updatedAt)
jobsjsonList of jobs (id, title, confidential, status, employmentType, locationId, departmentId, defaultInterviewPlanId, interviewPlanIds[], customFields[], jobPostingIds[], customRequisitionId, brandId, hiringTeam[], author, createdAt, updatedAt, openedAt, closedAt, location with address, openings[] with latestVersion)
applicationsjsonList of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notesjsonList of notes (id, content, author, isPrivate, createdAt)
offersjsonList of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasonsjsonList of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sourcesjsonList of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFieldsjsonList of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departmentsjsonList of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locationsjsonList of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostingsjsonList of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openingsjsonList of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
usersjsonList of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedulesjsonList of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tagsjsonList of candidate tags (id, title, isArchived)
idstringResource UUID
namestringResource name
titlestringJob title or job posting title
statusstringStatus
candidatejsonCandidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
jobjsonJob details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
applicationjsonApplication details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offerjsonOffer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPostingjsonJob posting details (id, title, descriptionPlain, descriptionHtml, descriptionSocial, descriptionParts, departmentName, teamName, teamNameHierarchy[], jobId, locationName, locationIds, address, isRemote, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensation, updatedAt, job [included when expandJob=true])
contentstringNote content
authorjsonNote author (id, firstName, lastName, email)
isPrivatebooleanWhether the note is private
createdAtstringISO 8601 creation timestamp
moreDataAvailablebooleanWhether more pages exist
nextCursorstringPagination cursor for next page
syncTokenstringSync token for incremental updates

On this page