Skip to content

Latest commit

 

History

History
1080 lines (897 loc) · 80.8 KB

File metadata and controls

1080 lines (897 loc) · 80.8 KB
title Ashby
description Manage candidates, jobs, and applications in Ashby

import { BlockInfoCard } from "@/components/ui/block-info-card"

{/* MANUAL-CONTENT-START:intro */} 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. {/* MANUAL-CONTENT-END */}

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

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to add the tag to
tagId string Yes The UUID of the tag to add

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
applicationId string Yes The UUID of the application to update the stage of
interviewStageId string Yes The UUID of the interview stage to move the application to
archiveReasonId string No Archive reason UUID. Required when moving to an Archived stage, ignored otherwise

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to consider for the job
jobId string Yes The UUID of the job to consider the candidate for
interviewPlanId string No UUID of the interview plan to use (defaults to the job default plan)
interviewStageId string No UUID of the interview stage to place the application in (defaults to first Lead stage)
sourceId string No UUID of the source to set on the application
creditedToUserId string No UUID of the user the application is credited to
createdAt string No ISO 8601 timestamp to set as the application creation date (defaults to now)

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync token for incremental updates

ashby_create_candidate

Creates a new candidate record in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
name string Yes The candidate full name
email string No Primary email address for the candidate
phoneNumber string No Primary phone number for the candidate
linkedInUrl string No LinkedIn profile URL
githubUrl string No GitHub profile URL
website string No Personal website URL
sourceId string No UUID of the source to attribute the candidate to
creditedToUserId string No UUID of the Ashby user to credit with sourcing this candidate
createdAt string No Backdated creation timestamp in ISO 8601 (e.g. 2024-01-01T00:00:00Z). Defaults to now.
alternateEmailAddresses json No Array of additional email address strings to add to the candidate, e.g. ["a@x.com","b@y.com"]

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to add the note to
note string Yes The note content. If noteType is text/html, supports: <b>, <i>, <u>, <a>, <ul>, <ol>, <li>, <code>, <pre>
noteType string No Content type of the note: text/plain (default) or text/html
sendNotifications boolean No Whether to send notifications to subscribed users (default false)
isPrivate boolean No Whether the note is private (only visible to the author)
createdAt string No Backdated creation timestamp in ISO 8601 (e.g. 2024-01-01T00:00:00Z). Defaults to now.

Output

Parameter Type Description
id string Created note UUID
createdAt string ISO 8601 creation timestamp
isPrivate boolean Whether the note is private
content string Note content
author object Author of the note
id string Author user UUID
firstName string Author first name
lastName string Author last name
email string Author email

ashby_get_application

Retrieves full details about a single application by its ID.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
applicationId string Yes The UUID of the application to fetch

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync token for incremental updates

ashby_get_candidate

Retrieves full details about a single candidate by their ID.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to fetch

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync token for incremental updates

ashby_get_job

Retrieves full details about a single job by its ID.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
jobId string Yes The UUID of the job to fetch

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync token for incremental updates

ashby_get_job_posting

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

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
jobPostingId string Yes The UUID of the job posting to fetch
jobBoardId string No Optional job board UUID. If omitted, returns posting for the external job board.
expandJob boolean No Whether to expand and include the related job object in the response

Output

Parameter Type Description
id string Job posting UUID
title string Job posting title
descriptionPlain string Full description in plain text
descriptionHtml string Full description in HTML
descriptionSocial string Shortened description for social sharing (max 200 chars)
descriptionParts object Description broken into opening, body, and closing sections
descriptionOpening object Opening (from Job Boards theme settings)
html string HTML content
plain string Plain text content
descriptionBody object Main description body
html string HTML content
plain string Plain text content
descriptionClosing object Closing (from Job Boards theme settings)
html string HTML content
plain string Plain text content
departmentName string Department name
teamName string Team name
teamNameHierarchy array Hierarchy of team names from root to team
jobId string Associated job UUID
locationName string Primary location name
locationIds object Primary and secondary location UUIDs
primaryLocationId string Primary location UUID
secondaryLocationIds array Secondary location UUIDs
address object Postal address of the posting location
postalAddress object Structured postal address
addressCountry string Country
addressRegion string State or region
addressLocality string City or locality
postalCode string Postal code
streetAddress string Street address
isRemote boolean Whether the posting is remote
workplaceType string Workplace type (OnSite, Remote, Hybrid)
employmentType string Employment type (FullTime, PartTime, Intern, Contract, Temporary)
isListed boolean Whether publicly listed on the job board
suppressDescriptionOpening boolean Whether the theme opening is hidden on this posting
suppressDescriptionClosing boolean Whether the theme closing is hidden on this posting
publishedDate string ISO 8601 published date
applicationDeadline string ISO 8601 application deadline
externalLink string External link to the job posting
applyLink string Direct apply link
compensation object Compensation details for the posting
compensationTierSummary string Human-readable tier summary
summaryComponents array Structured compensation components
summary string Component summary
compensationTypeLabel string Component type label (Salary, Commission, Bonus, Equity, etc.)
interval string Payment interval (e.g. annual, hourly)
currencyCode string ISO 4217 currency code
minValue number Minimum value
maxValue number Maximum value
shouldDisplayCompensationOnJobBoard boolean Whether compensation is shown on the job board
applicationLimitCalloutHtml string HTML callout shown when the application limit is reached
updatedAt string ISO 8601 last update timestamp
job object The 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
offerId string Yes The UUID of the offer to fetch

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default 100)
status string No Filter by application status: Active, Hired, Archived, or Lead
jobId string No Filter applications by a specific job UUID
candidateId string No Filter applications by a specific candidate UUID
createdAfter string No Filter to applications created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

Parameter Type Description
applications array List of applications
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_archive_reasons

Lists all archive reasons configured in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
includeArchived boolean No Whether to include archived archive reasons in the response (default false)

Output

Parameter Type Description
archiveReasons array List of archive reasons
id string Archive reason UUID
text string Archive reason text
reasonType string Reason type (RejectedByCandidate, RejectedByOrg, Other)
isArchived boolean Whether the reason is archived

ashby_list_candidate_tags

Lists all candidate tags configured in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
includeArchived boolean No Whether to include archived candidate tags (default false)
cursor string No Opaque pagination cursor from a previous response nextCursor value
syncToken string No Sync token from a previous response to fetch only changed results
perPage number No Number of results per page (default 100)

Output

Parameter Type Description
tags array List of candidate tags
id string Tag UUID
title string Tag title
isArchived boolean Whether the tag is archived
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page
syncToken string Sync token to use for incremental updates in future requests

ashby_list_candidates

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

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default 100)
createdAfter string No Only return candidates created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

Parameter Type Description
candidates array List of candidates
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_custom_fields

Lists all custom field definitions configured in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default and max 100)
syncToken string No Opaque token from a prior sync to fetch only items changed since then
includeArchived boolean No When true, includes archived custom fields in results (default false)

Output

Parameter Type Description
customFields array List of custom field definitions
id string Custom field UUID
title string Custom field title
isPrivate boolean Whether the custom field is private
fieldType string Field data type (MultiValueSelect, NumberRange, String, Date, ValueSelect, Number, Currency, Boolean, LongText, CompensationRange)
objectType string Object type the field applies to (Application, Candidate, Employee, Job, Offer, Opening, Talent_Project)
isArchived boolean Whether the custom field is archived
isRequired boolean Whether a value is required
selectableValues array Selectable values for MultiValueSelect fields (empty for other field types)
label string Display label
value string Stored value
isArchived boolean Whether archived
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page
syncToken string Opaque sync token returned after the last page; pass on next sync

ashby_list_departments

Lists all departments in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default and max 100)
syncToken string No Opaque token from a prior sync to fetch only items changed since then
includeArchived boolean No When true, includes archived departments in results (default false)

Output

Parameter Type Description
departments array List of departments
id string Department UUID
name string Department name
externalName string Candidate-facing name used on job boards
isArchived boolean Whether the department is archived
parentId string Parent department UUID
createdAt string ISO 8601 creation timestamp
updatedAt string ISO 8601 last update timestamp
extraData json Free-form key-value metadata
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page
syncToken string Opaque 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
applicationId string No The UUID of the application to list interview schedules for
interviewStageId string No The UUID of the interview stage to list interview schedules for
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default 100)
createdAfter string No Only return interview schedules created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

Parameter Type Description
interviewSchedules array List of interview schedules
id string Interview schedule UUID
status string Schedule status (NeedsScheduling, WaitingOnCandidateBooking, Scheduled, Complete, Cancelled, OnHold, etc.)
applicationId string Associated application UUID
interviewStageId string Interview stage UUID
createdAt string ISO 8601 creation timestamp
updatedAt string ISO 8601 last update timestamp
interviewEvents array Scheduled interview events on this schedule
id string Event UUID
interviewId string Interview template UUID
interviewScheduleId string Parent schedule UUID
interviewerUserIds array User UUIDs of interviewers assigned to the event
createdAt string Event creation timestamp
updatedAt string Event last updated timestamp
startTime string Event start time
endTime string Event end time
feedbackLink string URL to submit feedback for the event
location string Physical location
meetingLink string Virtual meeting URL
hasSubmittedFeedback boolean Whether any feedback has been submitted
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_job_postings

Lists all job postings in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
location string No Filter by location name (case sensitive)
department string No Filter by department name (case sensitive)
listedOnly boolean No When true, only returns listed (publicly visible) job postings (default false)
jobBoardId string No UUID of a specific job board to filter postings to. If omitted, returns postings on the primary external job board.

Output

Parameter Type Description
jobPostings array List of job postings
id string Job posting UUID
title string Job posting title
jobId string Associated job UUID
departmentName string Department name
teamName string Team name
locationName string Primary location display name
locationIds object Primary and secondary location UUIDs
primaryLocationId string Primary location UUID
secondaryLocationIds array Secondary location UUIDs
workplaceType string Workplace type (OnSite, Remote, Hybrid)
employmentType string Employment type (FullTime, PartTime, Intern, Contract, Temporary)
isListed boolean Whether the posting is publicly listed
publishedDate string ISO 8601 published date
applicationDeadline string ISO 8601 application deadline
externalLink string External link to the job posting
applyLink string Direct apply link for the job posting
compensationTierSummary string Compensation tier summary for job boards
shouldDisplayCompensationOnJobBoard boolean Whether compensation is shown on the job board
updatedAt string ISO 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default 100)
status string No Filter by job status: Open, Closed, Archived, or Draft
createdAfter string No Only return jobs created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)
openedAfter string No Only return jobs opened after this ISO 8601 timestamp
openedBefore string No Only return jobs opened before this ISO 8601 timestamp
closedAfter string No Only return jobs closed after this ISO 8601 timestamp
closedBefore string No Only return jobs closed before this ISO 8601 timestamp

Output

Parameter Type Description
jobs array List of jobs
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_locations

Lists all locations configured in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default and max 100)
syncToken string No Opaque token from a prior sync to fetch only items changed since then
includeArchived boolean No When true, includes archived locations in results (default false)
includeLocationHierarchy boolean No When true, includes location hierarchy components/regions (default false)

Output

Parameter Type Description
locations array List of locations
id string Location UUID
name string Location name
externalName string Candidate-facing name used on job boards
isArchived boolean Whether the location is archived
isRemote boolean Whether the location is remote (use workplaceType instead)
workplaceType string Workplace type (OnSite, Hybrid, Remote)
parentLocationId string Parent location UUID
type string Location component type (Location, LocationHierarchy)
address object Location postal address
addressCountry string Country
addressRegion string State or region
addressLocality string City or locality
postalCode string Postal code
streetAddress string Street address
extraData json Free-form key-value metadata
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page
syncToken string Opaque sync token returned after the last page; pass on next sync

ashby_list_notes

Lists all notes on a candidate with pagination support.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to list notes for
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page

Output

Parameter Type Description
notes array List of notes on the candidate
id string Note UUID
content string Note content
isPrivate boolean Whether the note is private
author object Note author
id string Author user UUID
firstName string First name
lastName string Last name
email string Email address
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_offers

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

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page
createdAfter string No Only return offers created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)
syncToken string No Opaque token from a prior sync to fetch only items changed since then
applicationId string No Return only offers for the specified application UUID

Output

Parameter Type Description
offers array List of offers
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_openings

Lists all openings in Ashby with pagination.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default 100)
createdAfter string No Only return openings created after this ISO 8601 timestamp (e.g. 2024-01-01T00:00:00Z)

Output

Parameter Type Description
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_list_sources

Lists all candidate sources configured in Ashby.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
includeArchived boolean No When true, includes archived sources in results (default false)

Output

Parameter Type Description
sources array List of sources
id string Source UUID
title string Source title
isArchived boolean Whether the source is archived
sourceType object Source type grouping
id string Source type UUID
title string Source type title
isArchived boolean Whether archived

ashby_list_users

Lists all users in Ashby with pagination.

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
cursor string No Opaque pagination cursor from a previous response nextCursor value
perPage number No Number of results per page (default 100)
includeDeactivated boolean No When true, includes deactivated users in results (default false)

Output

Parameter Type Description
users array List of users
moreDataAvailable boolean Whether more pages of results exist
nextCursor string Opaque cursor for fetching the next page

ashby_remove_candidate_tag

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

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to remove the tag from
tagId string Yes The UUID of the tag to remove

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync 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

Parameter Type Required Description
apiKey string Yes Ashby API Key
name string No Candidate name to search for (combined with email using AND logic)
email string No Candidate email to search for (combined with name using AND logic)

Output

Parameter Type Description
candidates array Matching candidates (max 100 results)

ashby_update_candidate

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

Input

Parameter Type Required Description
apiKey string Yes Ashby API Key
candidateId string Yes The UUID of the candidate to update
name string No Updated full name
email string No Updated primary email address
phoneNumber string No Updated primary phone number
linkedInUrl string No LinkedIn profile URL
githubUrl string No GitHub profile URL
websiteUrl string No Personal website URL
alternateEmail string No An additional email address to add to the candidate
sourceId string No UUID of the source to attribute the candidate to
creditedToUserId string No UUID of the Ashby user to credit with sourcing this candidate
createdAt string No Backdated creation timestamp in ISO 8601. Only updatable if originally backdated.
sendNotifications boolean No Whether to send a notification when the source is updated (default true)
socialLinks json No Array of social link objects to set on the candidate, e.g. [{"type":"LinkedIn","url":"https://..."}]. Replaces existing social links.

Output

Parameter Type Description
candidates json List 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)
jobs json List 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)
applications json List of applications (id, status, customFields[], candidate summary, currentInterviewStage, source with sourceType, archiveReason with customFields[], archivedAt, job summary, creditedToUser, hiringTeam[], appliedViaJobPostingId, submitterClientIp, submitterUserAgent, createdAt, updatedAt)
notes json List of notes (id, content, author, isPrivate, createdAt)
offers json List of offers (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion with id/startDate/salary/createdAt/openingId/customFields[]/fileHandles[]/author/approvalStatus)
archiveReasons json List of archive reasons (id, text, reasonType [RejectedByCandidate/RejectedByOrg/Other], isArchived)
sources json List of sources (id, title, isArchived, sourceType {id, title, isArchived})
customFields json List of custom field definitions (id, title, isPrivate, fieldType, objectType, isArchived, isRequired, selectableValues[] {label, value, isArchived})
departments json List of departments (id, name, externalName, isArchived, parentId, createdAt, updatedAt)
locations json List of locations (id, name, externalName, isArchived, isRemote, workplaceType, parentLocationId, type, address with addressCountry/Region/Locality/postalCode/streetAddress)
jobPostings json List of job postings (id, title, jobId, departmentName, teamName, locationName, locationIds, workplaceType, employmentType, isListed, publishedDate, applicationDeadline, externalLink, applyLink, compensationTierSummary, shouldDisplayCompensationOnJobBoard, updatedAt)
openings json List of openings (id, openedAt, closedAt, isArchived, archivedAt, closeReasonId, openingState, latestVersion with identifier/description/authorId/createdAt/teamId/jobIds[]/targetHireDate/targetStartDate/isBackfill/employmentType/locationIds[]/hiringTeam[]/customFields[])
users json List of users (id, firstName, lastName, email, globalRole, isEnabled, updatedAt)
interviewSchedules json List of interview schedules (id, applicationId, interviewStageId, interviewEvents[] with interviewerUserIds/startTime/endTime/feedbackLink/location/meetingLink/hasSubmittedFeedback, status, scheduledBy, createdAt, updatedAt)
tags json List of candidate tags (id, title, isArchived)
id string Resource UUID
name string Resource name
title string Job title or job posting title
status string Status
candidate json Candidate summary (id, name, primaryEmailAddress, primaryPhoneNumber). For full candidate fields use the candidates list output or the get/create/update candidate operations.
job json Job details (id, title, status, employmentType, locationId, departmentId, hiringTeam[], author, location, openings[], createdAt, updatedAt)
application json Application details (id, status, customFields[], candidate, currentInterviewStage, source, archiveReason, job, hiringTeam[], createdAt, updatedAt)
offer json Offer details (id, decidedAt, applicationId, acceptanceStatus, offerStatus, latestVersion)
jobPosting json Job 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])
content string Note content
author json Note author (id, firstName, lastName, email)
isPrivate boolean Whether the note is private
createdAt string ISO 8601 creation timestamp
moreDataAvailable boolean Whether more pages exist
nextCursor string Pagination cursor for next page
syncToken string Sync token for incremental updates