Ashby

Learn how to use Ashby with Composio

Overview

SLUG: ASHBY

Description

Ashby delivers an applicant tracking system for modern teams, offering features like job postings, candidate management, and data-driven hiring insights to streamline the recruitment process

Authentication Details

generic_api_key
stringRequired

Connecting to Ashby

Create an auth config

Use the dashboard to create an auth config for the Ashby toolkit. This allows you to connect multiple Ashby accounts to Composio for agents to use.

1

Select App

Navigate to Ashby.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Ashby Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4ashby_auth_config_id = "ac_YOUR_ASHBY_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Ashby for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, ashby_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Ashby toolkit’s playground

For code examples, see the Tool calling guide and Provider examples.

Tool List

Tool Name: Add Application Hiring Team Member

Description

Add an Ashby user to the hiring team at the application level. Use this when you need to assign a team member to participate in the hiring process for a specific application with a specific role. Requires the candidateWrite permission.

Action Parameters

applicationId
stringRequired
roleId
stringRequired
teamMemberId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Add Candidate to Project

Description

Add a candidate to a project. Use this to associate candidates with sourcing projects or recruiting initiatives. Requires candidatesWrite permission.

Action Parameters

candidateId
stringRequired
projectId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Add Candidate Tag

Description

Add a tag to a candidate. Use this to categorize and organize candidates with existing tags from the system.

Action Parameters

candidateId
stringRequired
tagId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Add Hiring Team Member

Description

Add an Ashby user to a hiring team at the application, job, or opening level. Use this when you need to assign a team member to participate in the hiring process with a specific role. Requires the organizationWrite permission.

Action Parameters

applicationId
jobId
openingId
roleId
stringRequired
teamMemberId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Add User to Interviewer Pool

Description

Add a user to an interviewer pool. Use this to assign interviewers to interview pools for scheduling and coordination. Requires the hiringProcessMetadataWrite permission.

Action Parameters

interviewerPoolId
stringRequired
interviewerPoolTrainingPathStageId
userId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Add Opening Job

Description

Tool to add a job to an opening (job requisition). Use when you need to associate a job with an existing opening. Requires the jobsWrite permission.

Action Parameters

jobId
stringRequired
openingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Add Opening Location

Description

Tool to add a location to an opening (job requisition). Use when you need to associate a location with an existing opening. Requires the jobsWrite permission.

Action Parameters

locationId
stringRequired
openingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Anonymize Candidate

Description

Anonymize a candidate by removing personally identifiable information. Use this when you need to permanently anonymize a candidate's data. This action cannot be reversed and requires all of the candidate's applications to be in the archived or hired state.

Action Parameters

candidateId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Archive Department

Description

Archive a department by its ID. Use this to mark a department as archived, which removes it from active use while preserving its data.

Action Parameters

departmentId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Archive Interviewer Pool

Description

Tool to archive an interviewer pool. Use when you need to archive a pool that is no longer active. Requires the hiringProcessMetadataWrite permission.

Action Parameters

interviewerPoolId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Archive Location

Description

Archives a location or location hierarchy. Requires the organizationWrite permission. Use this to mark locations as archived in the system.

Action Parameters

locationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Change Application Source

Description

Change the source attribution of an application. Use this to update which source and user should be credited for bringing in the candidate.

Action Parameters

applicationId
stringRequired
creditedToUserId
sourceId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Change Application Stage

Description

Move an application to a different interview stage. Use this to advance or move candidates through the hiring pipeline by changing their current interview stage.

Action Parameters

applicationId
stringRequired
interviewStageId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Application

Description

Create a new application for a candidate to a specific job. Use this to add a candidate to a job's hiring pipeline, optionally specifying the source, credited user, and initial interview stage.

Action Parameters

candidateId
stringRequired
creditedToUserId
interviewStageId
jobId
stringRequired
sourceId

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Candidate

Description

Create a new candidate in the system. Use this to add candidates with their contact information and social profiles before applying them to jobs.

Action Parameters

email
githubUrl
linkedInUrl
name
stringRequired
phoneNumber
websiteUrl

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Candidate Note

Description

Create a note on a candidate profile. Use this to add comments, observations, or feedback about a candidate during the recruitment process.

Action Parameters

candidateId
stringRequired
note
Required
sendNotifications

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Candidate Tag

Description

Create a new candidate tag. Use this to add new tags for categorizing and organizing candidates.

Action Parameters

title
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Custom Field

Description

Create a new custom field in Ashby. Use this to add custom fields that can be set on candidates, applications, jobs, or other objects. Requires the hiringProcessMetadataWrite permission.

Action Parameters

description
fieldType
stringRequired
isDateOnlyField
isExposableToCandidate
objectType
stringRequired
selectableValues
title
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Department

Description

Create a new department. Use this to add organizational departments or teams for structuring jobs and hierarchy.

Action Parameters

name
stringRequired
parentId

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Interviewer Pool

Description

Create a new interviewer pool. Use this to organize interviewers into groups by expertise or interview type. Requires the hiringProcessMetadataWrite permission.

Action Parameters

requiresTraining
title
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Job

Description

Create a new job opening. Use this to add a new role to the organization with title, team, location, and brand. Job cannot be opened without a default interview plan.

Action Parameters

brandId
stringRequired
defaultInterviewPlanId
jobTemplateId
locationId
stringRequired
teamId
stringRequired
title
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Location

Description

Create a new location or location hierarchy. Use this to add office locations, remote work settings, or nested location structures for organizational management.

Action Parameters

address
isRemote
name
stringRequired
parentLocationId
type
stringRequired
workplaceType

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Opening

Description

Create a new opening (job requisition). Use this to create a job opening with details like title, team, locations, and employment type. Requires openingsWrite permission.

Action Parameters

description
employmentType
identifier
isBackfill
jobIds
locationIds
openingState
targetHireDate
targetStartDate
teamId
title

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Survey Request

Description

Generate a survey request and receive a survey URL to send to a candidate. Use this when you need to collect feedback or information from candidates via a survey. Requires candidatesWrite permission. Note that calling this endpoint does not automatically email the survey to the candidate.

Action Parameters

applicationId
stringRequired
candidateId
stringRequired
surveyFormDefinitionId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Create Survey Submission

Description

Create a new survey submission for a candidate's application. Use this to submit candidate survey responses programmatically, such as candidate experience ratings or feedback forms. Requires the candidatesWrite permission.

Action Parameters

applicationId
stringRequired
candidateId
stringRequired
submittedValues
objectRequired
surveyFormDefinitionId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get API Key Info

Description

Retrieve information about the current API key, including associated organization, user details, and permissions. Use this to verify API key validity and check what access level the key has.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Application Info

Description

Retrieve detailed information about a specific application by its ID. Use this to get complete details about an application including candidate info, interview stages, hiring team, and more.

Action Parameters

applicationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Candidate Info

Description

Retrieve detailed information about a specific candidate by their ID. Use this to get complete candidate details including contact information, applications, social profiles, and more.

Action Parameters

candidateId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Custom Field Info

Description

Retrieve detailed information about a specific custom field by its ID. Use this to get custom field details including title, object type, field type, and selectable values. Requires the hiringProcessMetadataRead permission.

Action Parameters

customFieldId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Department Info

Description

Retrieve detailed information about a specific department by its ID. Use this to get department details including name, hierarchy, and archive status.

Action Parameters

departmentId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Feedback Form Definition

Description

Retrieve detailed information about a specific feedback form by its ID. Use this to get complete details about a feedback form including title, configuration, and form definition. Requires the hiringProcessMetadataRead permission.

Action Parameters

feedbackFormDefinitionId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get File Info

Description

Retrieve the URL of a file associated with a candidate. Use this to get a pre-signed S3 URL for accessing candidate files like resumes. Requires the candidatesRead permission.

Action Parameters

fileHandle
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Interviewer Pool Info

Description

Retrieve detailed information about a specific interviewer pool by its ID. Use this to get interviewer pool details including name, interviewers, and configuration.

Action Parameters

interviewerPoolId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Interviewer User Settings

Description

Get interviewer settings for a specific user by their ID. Use this to retrieve daily and weekly interview limits configured for the user. Requires the organizationRead permission.

Action Parameters

userId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Interview Info

Description

Retrieve detailed information about a specific interview type by its ID. Use this to get interview details including title, instructions, and feedback form configuration.

Action Parameters

interviewId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Interview Stage Info

Description

Tool to fetch interview stage details by ID. Use when you need specific information about an interview stage including its title, type, order, and parent interview plan. Requires the interviewsRead permission.

Action Parameters

interviewStageId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Job Info

Description

Retrieve detailed information about a specific job by its ID. Use this to get complete details about a job including title, status, hiring team, interview plans, and more.

Action Parameters

jobId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Job Posting Info

Description

Retrieve detailed information about a specific job posting by its ID. Use this to get complete job posting details including full description, application form fields, compensation, and publish settings.

Action Parameters

jobPostingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Location Info

Description

Retrieve detailed information about a specific location by its ID. Use this to get complete location details including address, remote status, and workplace type.

Action Parameters

locationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Opening Info

Description

Retrieve detailed information about a specific opening (job requisition) by its ID. An opening represents a headcount position that needs to be filled. Each opening belongs to a job and tracks hiring progress including state (Open/Closed), hiring team members, employment type, and target dates. Use this action to: - Get complete details about a specific opening including its current state - View the hiring team assigned to the opening - Check employment type, target hire date, and target start date - Access custom fields associated with the opening Returns opening details on success, or error information if the opening ID is invalid.

Action Parameters

openingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Referral Form

Description

Fetches the default referral form or creates a default referral form if none exists. Requires the hiringProcessMetadataRead permission.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get Survey Form Definition

Description

Retrieve detailed information about a specific survey form definition by its ID. Use this to get complete details about a survey form including title, configuration, and form definition. Requires the hiringProcessMetadataRead permission.

Action Parameters

surveyFormDefinitionId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Get User Info

Description

Retrieve detailed information about a specific user by their ID. Use this to get user details including name, email, role, and permissions.

Action Parameters

userId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Application Criteria Evaluations

Description

Retrieve AI-generated criteria evaluations for an application. Use this to get the AI assessment of how well a candidate meets specific job requirements, including evaluation outcomes and reasoning.

Action Parameters

applicationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Application Feedback

Description

Retrieve all feedback submissions for an application. Use this to view interviewer feedback, evaluations, and notes collected throughout the hiring process.

Action Parameters

applicationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Application Hiring Team Roles

Description

Retrieve all available hiring team roles for applications in the organization. Use this to get the list of roles that can be assigned to hiring team members on applications.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Application History

Description

Retrieve the complete history of stage transitions for an application. Use this to get detailed information about when and how a candidate moved through different interview stages.

Action Parameters

applicationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Applications

Description

Retrieve a list of applications. Use this to fetch applications with optional pagination and filtering by sync token for incremental updates.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Approvals

Description

Retrieve a list of approvals (offer approvals, job approvals, etc.). Use this to track approval workflows and pending approvals.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Archive Reasons

Description

Retrieve a list of all archive reasons. Use this to see available reasons for archiving candidates or applications, such as rejection categories.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Brands

Description

Retrieve a list of all brands for the organization. Use this to get available brands for job postings and employer branding. Requires organizationRead permission.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Candidate Client Info

Description

Retrieve all client info records for a specific candidate. Use this to view client-specific information associated with the candidate. Requires candidatesRead permission.

Action Parameters

candidateId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Candidate Notes

Description

Retrieve all notes for a specific candidate in Ashby. Use this action to view comments, observations, and internal notes added by recruiters and hiring team members during the hiring process. Common use cases: - Review feedback and observations from interviewers - Check historical communication and decisions about a candidate - Audit the hiring process for a specific candidate Prerequisites: - You need a valid candidateId. Get this from list_candidates or search_candidates. - Requires 'candidatesRead' permission in Ashby. Returns an empty list if the candidate has no notes.

Action Parameters

candidateId
stringRequired
cursor
limit
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Candidate Projects

Description

Retrieve all projects associated with a candidate. Use this to see which sourcing projects or recruiting initiatives a candidate is part of.

Action Parameters

candidateId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Candidates

Description

Retrieve a list of candidates. Use this to fetch all candidates with optional pagination and filtering by sync token for incremental updates.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Candidate Tags

Description

Retrieve a list of all candidate tags in your Ashby account. Tags are labels used to categorize and organize candidates for filtering and search purposes. Use this action to: - Get all available tags for tagging candidates - Implement incremental sync using the syncToken parameter - Paginate through large sets of tags using cursor Returns tag id, title, and archived status for each tag.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Close Reasons

Description

Retrieve a list of all close reasons for jobs and openings. Use this to see available reasons for closing job requisitions.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Communication Templates

Description

Retrieve a list of all communication templates. Use this to see available email and message templates for candidate outreach.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Custom Fields

Description

Retrieve a list of all custom field definitions configured in Ashby. Use this action to discover what custom fields are available for candidates, applications, jobs, offers, and openings. This is useful when you need to: - Know what custom fields exist before setting values on resources - Understand the data types and available options for each field - Identify the IDs of custom fields needed for other API operations Returns fields with their types (String, Number, Boolean, Date, ValueSelect, MultiValueSelect, Currency, CompensationRange) and selectable values for dropdown fields.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Departments

Description

Retrieve a list of all departments in the organization. Use this action to: - Get all departments for organizing jobs and candidates by team structure - Find department IDs needed for creating or filtering jobs - Understand the organizational hierarchy via parentId relationships - Perform incremental syncs to detect newly created or updated departments Supports pagination for large organizations. When moreDataAvailable is true, use the nextCursor value in subsequent requests to fetch more results.

Action Parameters

cursor
limit
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Feedback Form Definitions

Description

Retrieve all feedback form definitions from your Ashby organization. Use this action to: - Discover available interview feedback templates - Get form IDs for use with other feedback-related actions - Understand the structure of feedback forms including fields and sections - Identify the default feedback form vs custom scorecards Returns a list of feedback forms with their complete structure, including field types (ValueSelect, MultiValueSelect, Boolean, RichText) and selectable values.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Hiring Team Roles

Description

Retrieve a list of possible hiring team roles in the organization. Use this to get available roles that can be assigned to members of a hiring team (e.g., Hiring Manager, Recruiter, Recruiting Coordinator, Sourcer). Requires the organizationRead permission.

Action Parameters

namesOnly
Defaults to True

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interviewer Pools

Description

Retrieve a list of all interviewer pools. Interviewer pools are groups of interviewers organized by expertise, role, or interview type (e.g., "Backend Engineer", "Bar Raiser"). Use this to see available interviewer pools for scheduling interviews or managing interview assignments. Supports pagination via cursor and incremental sync via syncToken.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interview Events

Description

Lists interview events associated with an interview schedule. Use this to retrieve all scheduled interview events for a specific interview schedule, including timing, interviewers, and meeting details. Supports pagination and incremental synchronization.

Action Parameters

cursor
interviewScheduleId
stringRequired
limit
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interview Plans

Description

Retrieve a list of interview plans. Use this to get the structured interview processes and stages configured for different roles.

Action Parameters

cursor
includeArchived
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interview Types

Description

List all interview types defined in Ashby. Returns interview templates/definitions (e.g., 'Technical Phone Screen', 'Debrief', 'Intro Call with CEO') rather than scheduled interview instances. Use this to discover available interview types for building interview plans or to sync interview type data. Supports pagination via cursor and incremental sync via syncToken.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interview Schedules

Description

Retrieve a list of interview schedules. Use this to fetch all scheduled interviews with candidates, including timing, interviewers, and interview details.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interview Stage Groups

Description

Retrieve a list of interview stage groups. Use this to see how interview stages are organized into logical groups within interview plans.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Interview Stages

Description

Retrieve all interview stages for an interview plan in order. Use this to get the structured sequence of stages a candidate progresses through during the interview process for a specific role. Requires interviewsRead permission.

Action Parameters

interviewPlanId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Job Boards

Description

Retrieve a list of job boards. Use this to see where job postings can be published (e.g., LinkedIn, Indeed, company career page).

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Job Postings

Description

Retrieve a list of job postings. Use this to fetch all public job postings with optional pagination and filtering.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Jobs

Description

Retrieve a list of all jobs from Ashby ATS (Applicant Tracking System). Use this action to: - Fetch all open, closed, or draft jobs in your organization - Get job details including title, status, employment type, department, and hiring team - Paginate through large result sets using cursor-based pagination - Perform incremental syncs using syncToken to only fetch changed jobs Each job includes comprehensive information such as hiring team members, interview plan IDs, job posting IDs, custom fields, and timestamps.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Job Templates

Description

Retrieve a list of all job templates from Ashby ATS. Use this action to: - Discover available job templates for creating standardized job postings - View both active and inactive templates in your organization - Get template details including title, department, location, and employment type - Paginate through results using cursor-based pagination - Perform incremental syncs using syncToken to only fetch changed templates Job templates provide reusable configurations that help maintain consistency when creating new jobs in your organization.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Locations

Description

Retrieve a list of all locations. Use this to get available office locations and remote work settings for jobs.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Offers

Description

Retrieve a list of job offers. Use this to fetch all offers made to candidates with optional pagination and filtering.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Openings

Description

Retrieve a list of openings (job requisitions). Use this to fetch all openings with optional pagination and filtering.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Projects

Description

Retrieve a list of all projects. Use this to see candidate sourcing projects and recruiting initiatives.

Action Parameters

cursor
perPage
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Sources

Description

Retrieve a list of all candidate sources. Use this to get available sources for categorizing how candidates were sourced (e.g., LinkedIn, referrals, job boards).

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Survey Form Definitions

Description

Retrieve a list of all survey form definitions from Ashby. Use this action to discover available candidate survey templates including: - Candidate Experience Surveys (NPS ratings for candidate feedback) - Hiring Manager Experience Surveys (feedback on recruiting process) - Quality of Hire Assessments (post-hire performance ratings) - EEOC Surveys (equal employment opportunity information collection) Each survey form contains sections with fields defining the questions and response types. This is a read-only operation that does not require any parameters.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Survey Submissions

Description

Retrieve a list of survey submissions for a given survey type. Use this to fetch candidate survey responses with optional pagination and filtering by sync token. Requires candidatesRead permission.

Action Parameters

cursor
limit
surveyType
stringRequired
syncToken

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: List Users

Description

Retrieve a list of all users in the organization. Use this to get information about team members, their roles, and permissions.

Action Parameters

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Move Department

Description

Tool to move a department to another parent in the organizational hierarchy. Use when reorganizing department structure or changing parent-child relationships. Requires the organizationWrite permission.

Action Parameters

departmentId
stringRequired
newParentId

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Remove Interviewer Pool User

Description

Tool to remove a user from an interviewer pool. Use when you need to remove an interviewer from a specific pool. Requires the hiringProcessMetadataWrite permission.

Action Parameters

interviewerPoolId
stringRequired
userId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Remove Opening Job

Description

Remove a job from an opening. Use this to disassociate a job from a specific opening requisition. Requires jobsWrite permission.

Action Parameters

jobId
stringRequired
openingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Remove Opening Location

Description

Tool to remove a location from an opening (job requisition). Use when you need to disassociate a location from an existing opening. Requires the jobsWrite permission.

Action Parameters

locationId
stringRequired
openingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Restore Department

Description

Tool to restore an archived department. Use when you need to unarchive a department that was previously archived. Requires the organizationWrite permission.

Action Parameters

departmentId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Restore Interviewer Pool

Description

Tool to restore an archived interviewer pool. Use when you need to unarchive an interviewer pool that was previously archived. Requires the hiringProcessMetadataWrite permission.

Action Parameters

interviewerPoolId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Restore Location

Description

Tool to restore an archived location or location hierarchy. Use when you need to unarchive a location that was previously archived. Requires the organizationWrite permission.

Action Parameters

locationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Search Candidates

Description

Search for candidates by email or name. Use this for quick lookups to find specific candidates without pagination. Supports exact email match or partial name match.

Action Parameters

email
name

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Search Jobs

Description

Search for jobs by title in Ashby ATS (Applicant Tracking System). Use this action to: - Quickly find jobs by title without pagination - Perform partial match searches (e.g., "engineer" matches "Backend Engineer") - Look up specific job openings by name Returns matching jobs with full details including hiring team, department, location, interview plans, and job postings. Note: For listing all jobs or paginated results, use the List Jobs action instead.

Action Parameters

title
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Search Opening

Description

Search for openings by identifier. Use this for quick lookups to find specific openings without pagination. Returns empty results if no match found.

Action Parameters

identifier

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Search Projects

Description

Search for projects by title in Ashby. Use this action to quickly find specific sourcing projects or recruiting initiatives by searching their titles. This endpoint is ideal for: - Building project autocomplete features - Finding projects when you know part of the project name - Quick lookups without pagination Note: Results are limited to 100 matches. For larger result sets, use the List Projects action instead.

Action Parameters

title
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Search Users

Description

Search for an Ashby user by email address. Use this to find specific team members in the organization when you know their email. Returns matching user details including their ID, name, role, and status. Requires organizationRead permission.

Action Parameters

email
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Set Custom Field Value

Description

Set the value of a custom field for a given object (candidate, application, job, etc.). Use when you need to update a single custom field value. Important: When updating multiple custom fields on the same object, use customField.setValues instead to avoid race conditions.

Action Parameters

fieldId
stringRequired
fieldValue
Required
objectId
stringRequired
objectType
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Set Job Status

Description

Set the status of a job in Ashby ATS (Applicant Tracking System). Use this action to change the workflow state of a job: - Set to 'Open' to make a job actively accept applications - Set to 'Closed' to stop accepting applications for a job - Set to 'Draft' to put a job back into preparation mode Common use cases: - Close a job after filling the position - Open a draft job to start accepting applications - Transition a job through the hiring workflow Important limitations: - Cannot transition from Open to Draft (must close first) - Cannot transition from Closed to Open (create a new job instead) Returns the updated job details on success, or error information if the status transition is not allowed.

Action Parameters

jobId
stringRequired
status
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Set Opening Archived

Description

Sets the archived state of an opening. Requires the jobsWrite permission. Use this to archive or unarchive job openings.

Action Parameters

archive
booleanRequired
openingId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Set Opening State

Description

Tool to set the state of an opening (job requisition). Use when you need to change an opening's state to Draft, Approved, Open, or Closed. When closing an opening, a close reason ID must be provided.

Action Parameters

closeReasonId
openingId
stringRequired
openingState
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Submit Application Feedback

Description

Submit structured feedback for an application using a feedback form. Use this for formal interview feedback and scorecards, not for informal notes or comments.

Action Parameters

applicationId
stringRequired
fieldSubmissions
arrayRequired
formDefinitionId
stringRequired
interviewEventId
stringRequired
userId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Application

Description

Update an application's properties in Ashby. Use this action to modify application metadata such as: - Source attribution (how the candidate found or was found for the job) - Credited user (who should get credit for sourcing the candidate) - Creation date (useful for backdating imported applications) - Notification settings for the update Note: To update custom fields on applications, use the customFields.setValue endpoint instead. To change the application's interview stage, use change_application_stage. To archive/unarchive, use the archive actions. Returns the full updated application object with all current field values.

Action Parameters

applicationId
stringRequired
createdAt
creditedToUserId
sendNotifications
sourceId

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Application History

Description

Update the complete history of an application's stage transitions. Use this to modify stage entry times, delete history events, or update existing history records. CRITICAL: This endpoint requires sending the COMPLETE application history array - use list_application_history first to retrieve all existing entries, then modify and send back the full array.

Action Parameters

applicationHistory
arrayRequired
applicationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Candidate

Description

Update an existing candidate's profile information in Ashby ATS. Use this action to modify candidate details like name, email, phone number, job title, company, school, and social profiles (LinkedIn, GitHub, website). Requires a valid candidateId which can be obtained from list_candidates or search_candidates actions. Note: To update custom fields, use the customFields.setValue endpoint separately.

Action Parameters

alternateEmail
candidateId
stringRequired
company
creditedToUserId
email
githubUrl
linkedInUrl
name
phoneNumber
position
school
sendNotifications
sourceId
websiteUrl

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Department

Description

Update an existing department's information such as its name. Use this action to: - Rename a department to reflect organizational changes - Update department names with Unicode/international characters - Modify department details as your organization evolves Prerequisites: - You need a valid departmentId (obtain from list_departments action) - The department must not be archived - At least one field (e.g., name) must be provided for the update Note: The externalName is automatically updated to match the name.

Action Parameters

departmentId
stringRequired
name

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Interviewer Pool

Description

Tool to update an interviewer pool. Use when you need to modify the title or training requirements of an existing interviewer pool. Requires the hiringProcessMetadataWrite permission.

Action Parameters

interviewerPoolId
stringRequired
requiresTraining
title

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Job

Description

Update an existing job's properties in Ashby ATS. Use this action to modify job details such as: - Job title (e.g., change "Engineer" to "Senior Engineer") - Department/team assignment - Office location - Default interview plan - Confidentiality settings - Custom requisition ID Prerequisites: - You need a valid jobId from list_jobs or search_jobs - For teamId, get valid IDs from list_departments - For locationId, get valid IDs from list_locations - For defaultInterviewPlanId, get valid IDs from list_interview_plans Note: To update custom fields, use the customFields.setValue endpoint instead. To change job status (open/close/archive), use the set_job_status action.

Action Parameters

confidential
customRequisitionId
defaultInterviewPlanId
jobId
stringRequired
locationId
teamId
title

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Job Posting

Description

Update job posting details such as title or listing status. Use this to modify public job postings and control visibility.

Action Parameters

isListed
jobPostingId
stringRequired
title

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Location Address

Description

Update the address of a location or location hierarchy. Use this when you need to modify location address details such as city, region, country, or postal code. Requires the organizationWrite permission.

Action Parameters

address
objectRequired
locationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Location Name

Description

Update a location's name. Use this to rename an existing location. Requires the organizationWrite permission.

Action Parameters

locationId
stringRequired
name
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Location Remote Status

Description

Tool to update a location's remote status. Use when you need to mark a location as remote or non-remote. Requires organizationWrite permission.

Action Parameters

isRemote
booleanRequired
locationId
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Location Workplace Type

Description

Tool to update a location's workplace type (OnSite, Remote, or Hybrid). Use when you need to modify the workplace setting for an office location. Requires organizationWrite permission.

Action Parameters

locationId
stringRequired
workplaceType
stringRequired

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update Opening

Description

Update properties of an existing opening (job requisition). Use this to modify opening details such as description, team, hire dates, and employment type. Requires jobsWrite permission.

Action Parameters

description
employmentType
identifier
isBackfill
openingId
stringRequired
targetHireDate
targetStartDate
teamId

Action Response

data
objectRequired
error
successful
booleanRequired

Tool Name: Update User Interviewer Settings

Description

Update interviewer settings for a user, including daily and weekly interview limits. Use this when you need to set or modify interview scheduling constraints for a user. Either limit can be provided individually or both together; unprovided limits remain unchanged.

Action Parameters

dailyLimit
userId
stringRequired
weeklyLimit

Action Response

data
objectRequired
error
successful
booleanRequired