Ashby API Integration

These are the list of integration use cases supported by Knit for Ashby API as part of the ATS category


Add Completed Assessment to Candidate

  • ID: post_add_completed_assessment_to_candidate
  • Operation: write
  • Entities: partner, candidate, assessment
  • Summary: The 'Add Completed Assessment to Candidate' API allows you to add a completed assessment to a candidate's profile. It requires the 'candidatesWrite' permission. The request body must include the candidateId, partnerId, assessment details (including assessmentTypeId, assessmentId, assessmentName, result, and metadata), and a timestamp indicating when the assessment was completed. The response will indicate success or failure, and in the case of success, it will return the details of the assessment added. In case of an error, it will return a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Hiring Team Member to Application

  • ID: post_add_hiring_team_member_to_application
  • Operation: write
  • Entities: application, user, hiring team
  • Summary: The Add Hiring Team Member to Application API allows you to add an Ashby user to the hiring team at the application level. It requires the 'candidateWrite' permission. The request body must include 'applicationId', 'teamMemberId', and 'roleId', all of which are UUIDs. The response can either be a success response, which includes details about the user added to the hiring team, or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Job to Opening

  • ID: post_add_job_to_opening
  • Operation: write
  • Entities: job, opening, hiring team
  • Summary: The Add Job to Opening API allows users to add a job to an existing opening. It requires the 'jobsWrite' permission. The request body must include 'openingId' and 'jobId', both of which are strings representing the IDs of the opening and the job to be added, respectively. The response will indicate success with a boolean and provide details about the opening, including its state, whether it is archived, and information about the latest version of the opening. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Member to Hiring Team

  • ID: post_add_member_to_hiring_team
  • Operation: write
  • Entities: role, user, hiring team
  • Summary: The Add Member to Hiring Team API allows you to add an Ashby user to the hiring team at either the application or job level. It requires the 'organizationWrite' permission. The request body must include either an applicationId or jobId, along with the teamMemberId and roleId. The response will indicate success and provide details of the added team member, or it will return errors if the operation fails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Tag to Candidate

  • ID: post_add_tag_to_candidate
  • Operation: write
  • Entities: candidate, user, tag
  • Summary: The Add Tag to Candidate API allows users to add a specific tag to a candidate's profile in the Ashby system. This API requires the candidatesWrite permission. The request must include the candidate's unique ID and the tag's unique ID in the request body. The response will indicate whether the operation was successful and provide detailed information about the candidate, including their contact information, social links, tags, and other relevant details. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add User to Interviewer Pool

  • ID: post_add_user_to_interviewer_pool
  • Operation: write
  • Entities: interviewer pool, training stage, user
  • Summary: The 'Add User to Interviewer Pool' API allows you to add a user to a specified interviewer pool. It requires the 'hiringProcessMetadataWrite' permission. The request body must include the 'interviewerPoolId' and 'userId', both of which are UUIDs. Optionally, you can include 'interviewerPoolTrainingPathStageId'. The response will indicate success and provide details about the interviewer pool, including its ID, title, and training path information. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Anonymize Candidate

  • ID: post_anonymize_candidate
  • Operation: write
  • Entities: application, candidate, user
  • Summary: The Anonymize Candidate API is used to anonymize a candidate's data. It requires the 'candidatesWrite' permission and all of the candidate's applications must be in the archived or hired state. The API takes a POST request with a JSON body containing the 'candidateId' as a UUID. The response can either be a success response with detailed candidate information or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Archive Interviewer Pool

  • ID: post_archive_interviewer_pool
  • Operation: write
  • Entities: interviewer pool, training path, user
  • Summary: The Archive Interviewer Pool API archives an interviewer pool. It requires the 'hiringProcessMetadataWrite' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/interviewerPool.archive'. The request body must include the 'interviewerPoolId', which is the ID of the interviewer pool to be archived. The response can either be a success or an error. A successful response includes details about the interviewer pool, such as its ID, title, archival status, training path, qualified members, and trainees. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Cancel Assessment

  • ID: post_cancel_assessment
  • Operation: write
  • Entities: assessment status, assessment, metadata
  • Summary: The Cancel Assessment API allows partners to cancel an assessment that has been started. The request requires the 'assessment_id' in the body, which is a UUID identifying the assessment to be canceled. The response can either be a success response containing details about the canceled assessment or an error response with a list of error messages. The API is implemented by the partner and called by Ashby.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Cancel Interview Schedule

  • ID: post_cancel_interview_schedule
  • Operation: write
  • Entities: interview, interview schedule
  • Summary: The Cancel Interview Schedule API allows users to cancel an interview schedule by its ID. It requires the 'interviewsWrite' permission. The request must include the ID of the interview schedule to be canceled and optionally whether the schedule can be rescheduled. The response will indicate success or failure, and in case of success, it will provide details about the interview schedule, including its status, associated application ID, interview stage ID, and any scheduled interview events. In case of an error, a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Candidate Information Retrieval

  • ID: post_candidate_information_retrieval
  • Operation: read
  • Entities: application, candidate, tag
  • Summary: The Candidate Information Retrieval API allows users to fetch detailed information about a candidate using either the candidate's unique ID or an external mapping ID. This API requires the 'candidatesRead' permission. The request body must include either the 'id' or 'externalMappingId' to identify the candidate. The response includes comprehensive details about the candidate, such as personal information, contact details, social links, tags, position, company, school, application IDs, resume file handle, custom fields, profile URL, source, credited user, timezone, and primary location. The response can either be a success with detailed candidate information or an error with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Candidate Resume Upload

  • ID: post_candidate_resume_upload
  • Operation: write
  • Entities: candidate, resume, file handle
  • Summary: The candidate.uploadResume API allows users to upload a candidate's resume, parse it, and update their information in the system. This API requires the 'candidatesWrite' permission and the request must be sent with 'multipart/form-data' as the content type. The request body must include the 'candidateId' and the 'resume' file. The response will indicate success and provide detailed information about the candidate, including their contact information, social links, tags, position, company, school, application IDs, resume file handle, custom fields, profile URL, source, credited user, timezone, and primary location. If the request fails, an error response will be returned with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Candidate Search API

  • ID: post_candidate_search
  • Operation: read
  • Entities: candidate, email address, phone number
  • Summary: The Candidate Search API allows users to search for candidates by email and/or name. It requires the 'candidatesRead' permission. The API is designed for use cases where a small set of candidates is needed, such as building a candidate autocomplete. The request body can include 'email' and 'name' as search parameters, which are combined with the 'AND' operator if both are provided. The response is limited to 100 results and includes detailed candidate information such as email addresses, phone numbers, social links, tags, and more. If the search criteria are invalid, an error response is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Change Application Source

  • ID: post_change_application_source
  • Operation: write
  • Entities: application, candidate, source
  • Summary: The Change Application Source API allows users to update the source of a specific application. It requires the 'candidatesWrite' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/application.change_source'. The request body must include 'applicationId' and 'sourceId', both of which are UUIDs. The response can either be a success or an error. A successful response includes details about the application, candidate, current interview stage, source, job, and hiring team. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Change Application Stage

  • ID: post_change_application_stage
  • Operation: write
  • Entities: application, candidate, stage
  • Summary: The Change Application Stage API allows users to change the stage of an application in the system. It requires the 'candidatesWrite' permission. The request must include the applicationId and interviewStageId in the body, both of which are UUIDs. Optionally, an archiveReasonId can be provided if the application is being moved to an 'Archived' stage. The response will indicate success and provide detailed information about the application, including its status, candidate details, current interview stage, source, archive reason, job details, credited user, and hiring team. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create a New Job

  • ID: post_create_a_new_job
  • Operation: write
  • Entities: job, department, location
  • Summary: The 'Create a New Job' API endpoint allows users to create a new job posting in the system. It requires the 'jobsWrite' permission. The request must include a JSON body with the job title, team ID, and location ID as required fields. Optional fields include default interview plan ID and job template ID. The response will indicate success or failure, and if successful, it will return details of the created job, including its ID, title, status, and other attributes. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Application

  • ID: post_create_application
  • Operation: write
  • Entities: job, application, candidate
  • Summary: The Create Application API allows you to consider a candidate for a job by creating an application. It requires the candidatesWrite permission. The request body must include the candidateId and jobId as required fields. Optional fields include interviewPlanId, interviewStageId, sourceId, creditedToUserId, createdAt, and applicationHistory. The response can either be a success response with details of the created application or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Application for a Candidate

  • ID: post_create_application_for_candidate
  • Operation: write
  • Entities: application, candidate, job
  • Summary: The Create Application for a Candidate API allows you to consider a candidate for a job by creating an application. It requires the candidatesWrite permission. The request body must include the candidateId and jobId as required fields. Optional fields include interviewPlanId, interviewStageId, sourceId, creditedToUserId, createdAt, and applicationHistory. The response can be a success or error response. A successful response includes details about the application, candidate, job, and other related information. An error response contains a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Candidate

  • ID: post_create_candidate
  • Operation: write
  • Entities: candidate, user, source
  • Summary: The Create Candidate API endpoint allows users to create a new candidate in the system. It requires the candidatesWrite permission. The request must include the candidate's name, and can optionally include other details such as email, phone number, LinkedIn URL, GitHub URL, website, alternate email addresses, source ID, credited user ID, location, and creation timestamp. The response will indicate success and provide details about the created candidate, including their ID, name, contact information, social links, tags, position, company, school, application IDs, resume file handle, custom fields, profile URL, source, credited user, timezone, and primary location. In case of an error, the response will include error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Candidate Tag

  • ID: post_create_candidate_tag
  • Operation: write
  • Entities: candidate, candidate tag
  • Summary: The Create Candidate Tag API allows users to create a new tag for a candidate. It requires the 'hiringProcessMetadataWrite' permission. The request must include a JSON body with a 'title' field, which is the name of the tag. If a tag with the same title already exists, the existing tag will be returned. The response can either be a success response, which includes the tag details such as 'id', 'title', and 'isArchived', or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Custom Field

  • ID: post_create_custom_field
  • Operation: write
  • Entities: application, candidate, custom field
  • Summary: The Create Custom Field API allows users to create a new custom field in the Ashby system. It requires the hiringProcessMetadataWrite permission. The request body must include the fieldType, objectType, and title as required fields. Optional fields include description, selectableValues, isDateOnlyField, and isExposableToCandidate. The response will indicate success and provide details of the created custom field, including its id, title, objectType, isArchived, and fieldType. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Department

  • ID: post_create_department
  • Operation: write
  • Entities: department, response, organization
  • Summary: The Create Department API allows users to create a new department within an organization. It requires the 'organizationWrite' permission. The request must include the department's name and optionally the parent department's ID. The response will indicate success and provide details of the created department, including its ID, name, and archival status. In case of errors, an error message will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Interviewer Pool

  • ID: post_create_interviewer_pool
  • Operation: write
  • Entities: interviewer pool, training path, qualified member
  • Summary: The 'Create Interviewer Pool' API endpoint allows users to create a new interviewer pool. It requires the 'hiringProcessMetadataWrite' permission. The request must include a JSON body with the 'title' of the pool, which is required, and an optional 'requiresTraining' boolean to indicate if training is needed. The response will indicate success and provide details about the created pool, including its ID, title, archival status, training path, qualified members, and trainees. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Location or Location Hierarchy

  • ID: post_create_location_or_location_hierarchy
  • Operation: write
  • Entities: location hierarchy, location
  • Summary: The Create Location or Location Hierarchy API allows users to create a new location or a hierarchy of locations. It requires the 'organizationWrite' permission. The request body must include the 'name' and 'type' of the location, and can optionally include the 'address', 'parentLocationId', and 'isRemote' status. The response will indicate success and provide details of the created location, or it will return error messages if the input is invalid.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Note on Candidate

  • ID: post_create_note_on_candidate
  • Operation: write
  • Entities: candidate, user, note
  • Summary: The Create Note on Candidate API allows users to add a note to a candidate's profile. It requires the 'candidatesWrite' permission. The request body must include the candidate's unique identifier (candidateId) and the note content, which can be either a plain text string or an object specifying the content type and value. The API supports HTML elements like bold, italic, underline, links, lists, and code blocks for notes of type 'text/html'. Users can optionally specify whether to send notifications to subscribed users. The response includes a success flag and, if successful, details of the created note, including its ID, creation date, content, and author information. In case of errors, an error message is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Offer

  • ID: post_create_offer
  • Operation: write
  • Entities: application, offer process, offer
  • Summary: The Create Offer API endpoint allows users to create a new offer in the system. It requires the offersWrite permission. The request must include the offer process ID, offer form ID, and the offer form details, which include field submissions. The field submissions can include various types of data such as Boolean, Currency, Date, Number, String, ValueSelect, and MultiValueSelect. The response will indicate success or failure and, if successful, will include details about the created offer, such as its ID, application ID, acceptance status, offer status, latest version details, and author information. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Opening

  • ID: post_create_opening
  • Operation: write
  • Entities: opening, job, department
  • Summary: The Create Opening API allows users to create a new job opening. It requires the 'jobsWrite' permission. The request body must include details such as the identifier, description, teamId, locationIds, jobIds, targetHireDate, targetStartDate, isBackfill, employmentType, and openingState. The response will indicate success and provide details of the created opening, including its ID, state, and associated metadata. In case of errors, an error response with a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Referral

  • ID: post_create_referral
  • Operation: write
  • Entities: application, candidate, referral
  • Summary: The Create Referral API endpoint allows users to create a new referral in the system. It requires the candidatesWrite permission. The request must include the referral form ID, the user ID of the person submitting the referral, and the field submissions. Optionally, a creation timestamp can be provided. The response will indicate success and provide details about the created referral, including its ID, creation and update timestamps, status, candidate information, interview stage, source, job details, credited user, and hiring team. In case of errors, an error response will be returned with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Scheduled Interview

  • ID: post_create_scheduled_interview
  • Operation: write
  • Entities: application, interview event, interview schedule
  • Summary: The 'Create Scheduled Interview' API allows users to create a scheduled interview in Ashby. It requires the 'interviewsWrite' permission. The request body must include the 'applicationId' and 'interviewEvents', which detail the events that make up the interview schedule. Each event must specify 'startTime', 'endTime', and 'interviewers'. The response can either be a success, providing details of the created interview schedule, or an error with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Survey Request

  • ID: post_create_survey_request
  • Operation: write
  • Entities: application, candidate, survey request
  • Summary: The Create Survey Request API endpoint generates a survey request and returns a survey URL. This URL can be shared with a candidate to allow them to complete a survey. The request requires the candidatesWrite permission. The request body must include candidateId, applicationId, and surveyFormDefinitionId, all of which are UUIDs. The response will include a success flag and, if successful, details of the survey request including the survey URL. If unsuccessful, an error response with a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Webhook Setting

  • ID: post_create_webhook_setting
  • Operation: write
  • Entities: response, request, webhook
  • Summary: The Create Webhook Setting API allows users to create a webhook setting by specifying the type of webhook, the URL to which the webhook will send requests, and a secret token for signing the webhook request. The request requires the 'apiKeysWrite' scope for authentication. The request body must include 'webhookType', 'requestUrl', and 'secretToken' as required fields. The response will indicate success with a boolean and provide details of the created webhook setting, including its ID, enabled status, request URL, secret token, and webhook type. In case of errors, an error response will be returned with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Webhook Setting

  • ID: post_delete_webhook_setting
  • Operation: write
  • Entities: webhook setting
  • Summary: The Delete Webhook Setting API allows users to delete a specific webhook setting by providing the webhook ID. It requires the 'apiKeysWrite' permission. The request must include the 'webhookId' in the body as a UUID string. The response will indicate success with a boolean and return the deleted 'webhookId' if successful, or an array of error messages if there was an error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Feedback Form Definition Information

  • ID: post_feedback_form_definition_information
  • Operation: read
  • Entities: section, feedback form, field
  • Summary: The Feedback Form Definition Information API returns a single feedback form by its unique ID. It requires the 'hiringProcessMetadataRead' permission. The request must include the 'feedbackFormDefinitionId' in the body as a UUID. The response can either be a success, containing details of the feedback form such as its ID, title, and form definition, or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Application Details

  • ID: post_fetch_application_details
  • Operation: read
  • Entities: application, candidate, job
  • Summary: The Fetch Application Details API allows users to retrieve application details using either an application ID or a submitted form instance ID. If both IDs are provided, the application ID takes precedence. The API requires the 'candidatesRead' permission. The request body must include either 'applicationId' or 'submittedFormInstanceId', and optionally an 'expand' parameter to include additional related data. The response includes detailed information about the application, candidate, interview stages, job, and more. The API returns a success response with application details or an error response with error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Department Details

  • ID: post_fetch_department_details
  • Operation: read
  • Entities: department
  • Summary: The Fetch Department Details API allows users to retrieve details of a department by its unique ID. It requires the 'organizationRead' permission. The request must include the department ID in the request body. The response can either be a success response containing the department details such as ID, name, and archival status, or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Interview Details by ID

  • ID: post_fetch_interview_details_by_id
  • Operation: read
  • Entities: job, interview, feedback form definition
  • Summary: The Fetch Interview Details by ID API allows users to retrieve detailed information about a specific interview using its unique ID. This API requires the 'interviewsRead' permission. The request must include the interview ID in the request body as a UUID. The response will include details such as the interview's title, whether it is archived, HTML and plaintext descriptions, associated job ID, and feedback form definition ID. If the request is successful, the response will include a 'success' flag and the interview details. In case of an error, the response will include a 'success' flag set to false and a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Interview Stage Details

  • ID: post_fetch_interview_stage_details
  • Operation: read
  • Entities: interview stage, interview plan
  • Summary: The Fetch Interview Stage Details API allows users to retrieve details of a specific interview stage by its unique ID. It requires the 'interviewsRead' permission. The request must include the 'interviewStageId' in the body as a UUID. The response can either be a success, containing details such as the stage ID, title, type, order in the interview plan, and interview plan ID, or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Ashby User Information

  • ID: post_get_ashby_user_information
  • Operation: read
  • Entities: organization role, user
  • Summary: The Get Ashby User Information API allows you to retrieve information about a specific user in the Ashby system by their user ID. This API requires the 'organizationRead' permission. The request must include a JSON body with the 'userId' parameter, which is a UUID representing the user to be looked up. The response will either be a success response containing user details such as id, firstName, lastName, email, globalRole, isEnabled, and updatedAt, or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Interviewer Pool Information

  • ID: post_interviewer_pool_information
  • Operation: read
  • Entities: interviewer pool, training path, user
  • Summary: The Interviewer Pool Information API provides details about a specific interviewer pool. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/interviewerPool.info'. The request body must include the 'interviewerPoolId', which is a UUID identifying the pool. The response can be a success or an error. A successful response includes details such as the pool's ID, title, archival status, training path, qualified members, and trainees. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Job Information Retrieval

  • ID: post_job_information_retrieval
  • Operation: read
  • Entities: job, department, location
  • Summary: The Job Information Retrieval API allows users to fetch detailed information about a specific job using its unique ID. The request requires the 'jobsRead' permission and must include the job ID in the request body. Optionally, users can expand the response to include additional data related to the job's location and openings. The response includes detailed job information such as title, status, employment type, associated department, and custom fields. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Job Search API

  • ID: post_job_search
  • Operation: read
  • Entities: job, department, location
  • Summary: The Job Search API allows users to search for jobs by title. It requires the 'jobsRead' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/job.search'. The request body must include a 'title' field specifying the job title to search for. The response includes a success flag and a list of job results, each containing details such as job ID, title, status, employment type, location, department, interview plans, custom fields, job postings, requisition ID, hiring team, and timestamps for updates, openings, and closings. In case of errors, an error response with a list of error messages is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List All Locations

  • ID: post_list_all_locations
  • Operation: read
  • Entities: organization, location, address
  • Summary: The List All Locations API endpoint allows users to retrieve a list of all locations, excluding regions. The request requires the 'organizationRead' permission. The request body can include an optional parameter 'includeArchived' to specify whether archived locations should be included in the response. The response will return a success status and a list of location objects, each containing details such as id, name, archival status, address, and remote status. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List All Sources

  • ID: post_list_all_sources
  • Operation: read
  • Entities: source type, hiring process metadata, source
  • Summary: The 'List All Sources' API endpoint allows users to retrieve a list of all sources. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/source.list'. The request body can include an optional 'includeArchived' boolean parameter to specify whether archived items should be included. The response will include a 'success' boolean indicating if the request was successful, and if successful, a 'results' array containing source objects with 'id', 'title', 'isArchived', and 'sourceType' details. If there are errors, an 'errors' array will be returned with error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Application Feedback

  • ID: post_list_application_feedback
  • Operation: read
  • Entities: application, user, application feedback
  • Summary: The List Application Feedback API endpoint allows users to retrieve all feedback associated with a specific application. It requires the 'candidatesRead' permission. The request is made via a POST method to the specified URL with headers indicating the content type as 'application/json'. The request body can include parameters such as 'createdAfter', 'cursor', 'syncToken', 'limit', and 'applicationId'. The response includes a success flag, a list of results with detailed feedback information, and pagination details like 'moreDataAvailable' and 'nextCursor'. In case of errors, an error response with a list of error messages is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Application Hiring Team Roles

  • ID: post_list_application_hiring_team_roles
  • Operation: read
  • Entities: application, organization, hiring team role
  • Summary: The List Application Hiring Team Roles API retrieves all available hiring team roles for applications within the organization. It requires the 'candidatesRead' permission. The request is made via a POST method to the specified endpoint with an 'accept' header indicating the media type as 'application/json'. The response includes a list of roles with their unique IDs and titles if successful, or an error message if the request fails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Applications

  • ID: post_list_applications
  • Operation: read
  • Entities: application, candidate, job
  • Summary: The List Applications API endpoint retrieves all applications within an organization. It requires the 'candidatesRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/application.list'. The request body can include parameters such as 'createdAfter', 'cursor', 'syncToken', 'limit', 'expand', 'status', and 'jobId'. The response includes a success flag, a list of results with detailed application information, and pagination details like 'moreDataAvailable' and 'nextCursor'. The response also provides a 'syncToken' for synchronization purposes. In case of errors, an error response with a list of error messages is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Archive Reasons

  • ID: post_list_archive_reasons
  • Operation: read
  • Entities: archive reason, interview plan
  • Summary: The List Archive Reasons API endpoint allows users to retrieve a list of archive reasons. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/archiveReason.list'. The request body can include a boolean parameter 'includeArchived' to specify whether archived interview plans should be included. The response can either be a success response containing a list of archive reasons with details such as 'id', 'text', 'reasonType', and 'isArchived', or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Candidate Notes

  • ID: post_list_candidate_notes
  • Operation: read
  • Entities: candidate, author, note
  • Summary: The List Candidate Notes API endpoint allows users to retrieve all notes associated with a specific candidate. It requires the 'candidatesRead' permission. The request must include the candidate's ID, and optionally a cursor, sync token, and limit for pagination. The response includes a success flag, and if successful, a list of notes with details such as note ID, creation date, content, and author information. If there are errors, an error message will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Candidate Tags

  • ID: post_list_candidate_tags
  • Operation: read
  • Entities: candidate, tag
  • Summary: The List Candidate Tags API endpoint allows users to retrieve all candidate tags. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/candidateTag.list'. The request body can include an optional 'includeArchived' boolean parameter to specify whether archived tags should be included. The response will be a JSON object indicating success and containing an array of candidate tags, each with an 'id', 'title', and 'isArchived' status. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Candidates

  • ID: post_list_candidates
  • Operation: read
  • Entities: application, candidate, tag
  • Summary: The List Candidates API endpoint allows users to retrieve a list of all candidates in an organization. It requires the 'candidatesRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/candidate.list'. The request body can include parameters such as 'cursor' for pagination, 'syncToken' for data synchronization, and 'limit' to specify the number of items to return. The response includes a success flag, potential error messages, and detailed candidate information such as name, contact details, social links, tags, and more.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Custom Fields

  • ID: post_list_custom_fields
  • Operation: read
  • Entities: object type, value, custom field
  • Summary: The List Custom Fields API endpoint allows users to retrieve a list of all custom fields available in the Ashby system. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the specified URL with headers indicating the content type as 'application/json'. The request body can include optional parameters such as 'cursor' for pagination, 'syncToken' for synchronization, and 'limit' to specify the number of items to return. The response can either be a success or an error. A successful response includes a list of custom fields with details such as 'id', 'title', 'objectType', 'isArchived', 'fieldType', and 'selectableValues' if applicable. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Departments

  • ID: post_list_departments
  • Operation: read
  • Entities: permission, department, organization
  • Summary: The List Departments API endpoint allows users to retrieve a list of all departments within an organization. It requires the 'organizationRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/department.list'. The request body can include an optional 'includeArchived' boolean parameter to specify whether archived departments should be included in the response. The response will return a success status and a list of department objects, each containing an 'id', 'name', 'isArchived' status, and optionally a 'parentId'. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Feedback Form Definitions

  • ID: post_list_feedback_form_definitions
  • Operation: read
  • Entities: interview, feedback form, organization
  • Summary: The List Feedback Form Definitions API endpoint allows users to retrieve a list of feedback forms. It requires the 'hiringProcessMetadataRead' permission. The request body can include parameters such as 'includeArchived' to include archived items, 'cursor' for pagination, 'syncToken' for synchronization, and 'limit' to specify the number of items to return. The response includes a success flag, a list of results with feedback form details, and pagination information. In case of errors, an error message is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Hiring Team Roles

  • ID: post_list_hiring_team_roles
  • Operation: read
  • Entities: organization, hiring team role
  • Summary: The List Hiring Team Roles API endpoint allows users to retrieve a list of possible hiring team roles within an organization. It requires the 'organizationRead' permission. The request is made via a POST method to the specified URL with headers indicating the expected response and request body media types as 'application/json'. The request body can include a 'namesOnly' boolean parameter, which defaults to true. If 'namesOnly' is true, the response will be an array of role titles. If false, the response will include an array of objects with each role's id and title. The response includes a 'success' boolean indicating if the request was successful and a 'results' array containing the role information.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interview Events

  • ID: post_list_interview_events
  • Operation: read
  • Entities: interviewer, interview event, interview schedule
  • Summary: The List Interview Events API allows users to retrieve a list of interview events associated with a specific interview schedule. It requires the 'interviewsRead' permission. The request must include the 'interviewScheduleId' in the body, which is a UUID identifying the interview schedule. The response will include a success flag and a list of interview events, each with details such as event ID, interview ID, schedule ID, interviewer IDs, creation time, start and end times, feedback link, location, meeting link, and feedback submission status. In case of errors, an error response with a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interview Plans

  • ID: post_list_interview_plans
  • Operation: read
  • Entities: request, response, interview plan
  • Summary: The List Interview Plans API endpoint allows users to retrieve a list of interview plans. It requires the 'interviewsRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/interviewPlan.list'. The request body can include an optional parameter 'includeArchived' to specify whether archived items should be included in the response. The response can either be a success response containing a list of interview plans with details such as 'id', 'title', and 'isArchived', or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interview Schedules

  • ID: post_list_interview_schedules
  • Operation: read
  • Entities: application, interview stage, interview schedule
  • Summary: The List Interview Schedules API retrieves all interview schedules within an organization. It requires the 'interviewsRead' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/interviewSchedule.list'. The request body can include parameters such as 'createdAfter', 'cursor', 'syncToken', 'limit', 'applicationId', and 'interviewStageId'. The response includes a success flag, a list of interview schedules, and pagination details like 'moreDataAvailable', 'nextCursor', and 'syncToken'. Each interview schedule contains details such as 'id', 'status', 'applicationId', 'interviewStageId', and associated 'interviewEvents'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interview Stages

  • ID: post_list_interview_stages
  • Operation: read
  • Entities: interview stage, response, interview plan
  • Summary: The List Interview Stages API endpoint allows users to list all interview stages for a specified interview plan in order. It requires the 'interviewsRead' permission. The request must include the 'interviewPlanId' in the body as a UUID. The response will indicate success and provide an array of interview stages, each with an id, title, type, order in the interview plan, and the interview plan id. If the request fails, an error response with a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interviewer Pools

  • ID: post_list_interviewer_pools
  • Operation: read
  • Entities: interviewer pool, training stage, training path
  • Summary: The List Interviewer Pools API endpoint allows users to retrieve a list of interviewer pools. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/interviewerPool.list'. The request body can include parameters such as 'cursor', 'syncToken', 'limit', 'includeArchivedPools', and 'includeArchivedTrainingStages'. The response includes a success flag, a list of results with details about each pool, and pagination information. In case of an error, the response will include an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interviews

  • ID: post_list_interviews
  • Operation: read
  • Entities: job, interview, feedback form definition
  • Summary: The 'List Interviews' API endpoint allows users to retrieve a list of interviews. It requires the 'interviewsRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/interview.list'. The request body can include parameters such as 'cursor', 'syncToken', 'limit', 'includeArchived', and 'includeNonSharedInterviews'. The response can either be a success or an error. A successful response includes details about the interviews such as 'id', 'title', 'isArchived', 'instructionsHtml', 'instructionsPlain', 'jobId', and 'feedbackFormDefinitionId'. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Job Postings

  • ID: post_list_job_postings
  • Operation: read
  • Entities: job, department, job posting
  • Summary: The List Job Postings API endpoint allows users to retrieve all published job postings. It requires the 'jobsRead' permission. By default, it includes both listed and unlisted job postings. To only fetch publicly displayable job postings, set the 'listedOnly' parameter to true. The request body can filter results by location and department. The response includes details such as job ID, title, department, team, location, employment type, and more. It also provides a success status and handles errors with descriptive messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Jobs

  • ID: post_list_jobs
  • Operation: read
  • Entities: job, department, location
  • Summary: The List Jobs API allows users to retrieve a list of jobs, including open, closed, and archived jobs. It requires the 'jobsRead' permission. The request body can include parameters such as 'cursor', 'syncToken', 'limit', 'status', 'openedAfter', 'openedBefore', 'closedAfter', 'closedBefore', and 'expand'. The response includes a success flag, a list of job results, and pagination information. Each job result contains details such as job ID, title, status, employment type, location, department, interview plans, custom fields, and hiring team information.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Offers with Latest Version

  • ID: post_list_offers_with_latest_version
  • Operation: read
  • Entities: application, offer, user
  • Summary: The offer.list API endpoint is used to retrieve a list of all offers with their latest version. It requires the 'offersRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/offer.list'. The request body can include parameters such as 'cursor', 'syncToken', 'limit', and 'applicationId' to filter and paginate the results. The response includes a success flag, a list of offers with details such as acceptance status, offer status, latest version details, and author information. The response also indicates if more data is available for pagination and provides a new sync token for subsequent requests.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Openings

  • ID: post_list_openings
  • Operation: read
  • Entities: job, opening, hiring team
  • Summary: The List Openings API endpoint allows users to retrieve a list of job openings. It requires the 'jobsRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/opening.list'. The request body can include optional parameters 'cursor' and 'syncToken' to paginate through results and synchronize data. The response includes a success flag and a list of results, each containing details about the job opening such as its ID, state, and latest version information. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Survey Form Definitions

  • ID: post_list_survey_form_definitions
  • Operation: read
  • Entities: survey form definition, sync token, cursor
  • Summary: The List Survey Form Definitions API endpoint allows users to retrieve a list of all survey form definitions. It requires the 'hiringProcessMetadataRead' permission. The request is made via a POST method to the specified URL with headers indicating the expected response and request body media types as 'application/json'. The request body can include optional parameters such as 'cursor' for pagination, 'syncToken' for synchronization, and 'limit' to specify the number of items to return. The response can either be a success or an error. A successful response includes a list of survey form definitions with details such as form ID, title, archived status, and form definition details. An error response includes a success flag set to false and a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Survey Submissions

  • ID: post_list_survey_submissions
  • Operation: read
  • Entities: application, candidate, survey submission
  • Summary: The surveySubmission.list API endpoint allows users to list all survey submissions of a specified survey type. It requires the 'candidatesRead' permission. The request body must include the 'surveyType' parameter, which specifies the type of survey submissions to fetch. Optional parameters include 'cursor', 'syncToken', and 'limit', which control pagination and data synchronization. The response includes a success flag, pagination information, and an array of survey submission results, each containing details such as the submission ID, candidate ID, application ID, survey type, form definition, and submitted values. In case of errors, the response will include an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Users

  • ID: post_list_users
  • Operation: read
  • Entities: role, permission, user
  • Summary: The List Users API endpoint allows you to retrieve a list of all Ashby users. It requires the 'organizationRead' permission. The request body can include parameters such as 'cursor' for pagination, 'syncToken' for synchronization, 'limit' to specify the number of items to return, and 'includeDeactivated' to include deactivated users in the response. The response includes user details such as 'id', 'firstName', 'lastName', 'email', 'globalRole', 'isEnabled', and 'updatedAt'. The 'globalRole' property specifies the user's access level in Ashby. The response can also indicate if more data is available for pagination.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Location Information Retrieval

  • ID: post_location_information_retrieval
  • Operation: read
  • Entities: location, address
  • Summary: The Location Information Retrieval API allows users to get details for a single location by its ID. It requires the 'organizationRead' permission. The request must include a JSON body with the 'locationId' parameter, which is a UUID representing the location to fetch. The response can either be a success response containing the location details such as ID, name, archival status, address, and remote status, or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Offer Information Retrieval

  • ID: post_offer_information_retrieval
  • Operation: read
  • Entities: application, offer, author
  • Summary: The Offer Information Retrieval API allows users to fetch details about a specific offer using its unique ID. This API requires the 'offersRead' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/offer.info'. The request body must include the 'offerId', which is a UUID representing the offer to be fetched. The response can either be a success or an error. A successful response includes details such as the offer's ID, application ID, acceptance status, offer status, latest version details, and author information. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Opening Search

  • ID: post_opening_search
  • Operation: read
  • Entities: job, opening, hiring team
  • Summary: The Opening Search API allows users to search for job openings by their identifier. It requires the 'jobsRead' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/opening.search'. The request body must include a JSON object with the 'identifier' of the opening to search for. The response can either be a success or an error. A successful response includes a list of results with details about each opening, such as its ID, state, and latest version information. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Referral Form Information

  • ID: post_referral_form_information
  • Operation: read
  • Entities: referral form
  • Summary: The Referral Form Information API fetches the default referral form or creates one if it does not exist. It requires the 'hiringProcessMetadataRead' permission. The API is accessed via a POST request to the specified endpoint with an 'accept' header set to 'application/json'. The response can either be a success or an error. A successful response includes details about the referral form, such as its ID, title, and form definition. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Remove Job from Opening

  • ID: post_remove_job_from_opening
  • Operation: write
  • Entities: job, opening
  • Summary: The Remove Job from Opening API allows users to remove a specific job from an opening. It requires the 'jobsWrite' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/opening.removeJob'. The request body must include 'openingId' and 'jobId', both of which are required. The response can either be a success or an error. A successful response includes details about the opening, such as its state, whether it is archived, and information about the latest version of the opening. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Remove User from Interviewer Pool

  • ID: post_remove_user_from_interviewer_pool
  • Operation: write
  • Entities: interviewer pool, user
  • Summary: The 'Remove User from Interviewer Pool' API allows you to remove a user from a specified interviewer pool. This API requires the 'hiringProcessMetadataWrite' permission. The request must include the 'interviewerPoolId' and 'userId' in the body, both of which are UUIDs. The response will indicate success or failure. On success, it returns details about the interviewer pool, including its ID, title, archival status, training path, qualified members, and trainees. On failure, it provides a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Restore Interviewer Pool

  • ID: post_restore_interviewer_pool
  • Operation: write
  • Entities: interviewer pool, training path, user
  • Summary: The 'Restore Interviewer Pool' API endpoint allows users to restore an archived interviewer pool. It requires the 'hiringProcessMetadataWrite' permission. The request is made via a POST method to the specified URL with a JSON body containing the 'interviewerPoolId' of the pool to be restored. The response can either be a success, returning details of the restored pool including its ID, title, archival status, training path, qualified members, and trainees, or an error with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve API Key Information

  • ID: post_retrieve_api_key_information
  • Operation: read
  • Entities: API key
  • Summary: The apiKey.info API endpoint is used to retrieve information about the API key being used to make the request. It requires the 'apiKeysRead' permission. The request is made using the POST method to the URL 'https://api.ashbyhq.com/apiKey.info'. The request headers must include 'accept' and 'content-type' set to 'application/json'. The request body is an empty JSON object. The response can either be a success response containing the API key's title and creation date or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve File URL for Candidate

  • ID: post_retrieve_file_url_for_candidate
  • Operation: read
  • Entities: candidate, file
  • Summary: The 'Retrieve File URL for Candidate' API endpoint allows users to retrieve the URL of a file associated with a candidate. This API requires the 'candidatesRead' permission. The request is made via a POST method to the URL 'https://api.ashbyhq.com/file.info'. The request body must include a 'fileHandle', which is a string representing a file handle retrieved from the public API. The response can either be a success, returning a JSON object with a 'success' boolean and a 'results' object containing the 'url' of the file, or an error, returning a 'success' boolean set to false and an 'errors' array with error message strings.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve Job Posting Information

  • ID: post_retrieve_job_posting_information
  • Operation: read
  • Entities: department, job posting, team
  • Summary: The Retrieve Job Posting Information API allows users to retrieve detailed information about a specific job posting. It requires the 'jobsRead' permission. The request must include the 'jobPostingId' in the body, which is a UUID identifying the job posting. Optionally, the 'expand' parameter can be used to include additional data for related objects. The response includes detailed information about the job posting, such as its title, description, department, team, location, and linked data for search engine optimization. The API returns a success response with the job posting details or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve Opening Information

  • ID: post_retrieve_opening_information
  • Operation: read
  • Entities: job, opening, hiring team
  • Summary: The Retrieve Opening Information API allows users to retrieve detailed information about a specific job opening using its UUID. This API requires the 'jobsRead' permission. The request must include the 'openingId' in the body, which is the unique identifier of the opening. The response will include detailed information about the opening, such as its state, whether it is archived, and details about the latest version of the opening, including the hiring team, employment type, and other relevant details. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Set Archived State of an Opening

  • ID: post_set_archived_state_of_an_opening
  • Operation: write
  • Entities: job, opening, hiring team
  • Summary: The 'Set Archived State of an Opening' API allows users to update the archived state of a specific job opening. It requires the 'jobsWrite' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/opening.setArchived'. The request body must include 'openingId' (the ID of the opening) and 'archive' (a boolean indicating the desired archived state). The response will indicate success and provide details about the opening, including its ID, state, and latest version information. In case of errors, an error message will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Set Custom Field Value

  • ID: post_set_custom_field_value
  • Operation: write
  • Entities: application, candidate, custom field
  • Summary: The 'Set Custom Field Value' API allows users to set the value of a custom field for a specified object. It requires the 'candidatesWrite' permission. The request body must include 'objectId', 'objectType', 'fieldId', and 'fieldValue'. The 'fieldValue' can be of various types depending on the field being updated, such as Boolean, Date, String, MultiValueSelect, Number, or ValueSelect. The response will indicate success and provide details of the updated field value, or it will return an error message if the input is invalid.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Set Job Status

  • ID: post_set_job_status
  • Operation: write
  • Entities: job, department, hiring team
  • Summary: The Set Job Status API allows users to change the status of a job by its unique ID. It requires the 'jobsWrite' permission. The job status can be set to 'Draft', 'Open', 'Closed', or 'Archived', with specific transitions allowed between these states. The request must include the job ID and the desired status in the body. The response will indicate success and provide detailed job information if successful, or error messages if not.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Set Opening State

  • ID: post_set_opening_state
  • Operation: write
  • Entities: opening state, opening, close reason
  • Summary: The Set Opening State API allows users to update the state of a job opening. It requires the 'jobsWrite' permission. The request is made via a POST method to the endpoint 'https://api.ashbyhq.com/opening.setOpeningState'. The request body must include 'openingId' (the ID of the opening to update), 'openingState' (the new state, which can be 'Draft', 'Approved', 'Open', or 'Closed'), and optionally 'closeReasonId' if the state is being set to 'Closed'. The response will indicate success and provide details of the updated opening, including its ID, state, and other metadata. In case of errors, an error response with a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Start Assessment

  • ID: post_start_assessment
  • Operation: write
  • Entities: candidate, job, assessment
  • Summary: The Start Assessment API is used to initiate an assessment for a candidate. It requires details about the assessment type, candidate, application, and job. The request body must include the assessment_type_id, candidate details (including ashby_id, first_name, last_name, email, and ashby_profile_url), application details (including ashby_id and status), and job details (including ashby_id, name, ashby_job_url, and hiring team information). The response includes a success flag and results containing the assessment_id and various metadata about the assessment, such as update requests, assessment profile URL, assessment result, cancelled reason, and additional metadata.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Start Offer Process

  • ID: post_start_offer_process
  • Operation: write
  • Entities: offer process, offer, offer version
  • Summary: The offer.start endpoint creates and returns an offer version instance that can be filled out and submitted using the offer.create endpoint. It requires the offersWrite permission. To create a new offer version for a candidate with an in-progress offer process, call the offer.start endpoint and then call the offer.create endpoint to fill out the newly created offer version form. The request body requires the offerProcessId, which is the ID of the offer process to start. The response can either be a success response containing the offer version details or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Submit Application Feedback

  • ID: post_submit_application_feedback
  • Operation: write
  • Entities: application, feedback form, user
  • Summary: The Submit Application Feedback API allows users to submit feedback for a specific application using a feedback form. The API requires the candidatesWrite permission. The request body must include the feedback form details, form definition ID, application ID, and optionally the user ID and interview event ID. The feedback form supports various field types such as Boolean, Date, Email, Number, RichText, Score, Phone, String, ValueSelect, and MultiValueSelect. The response indicates whether the submission was successful and includes the submitted form instance details. In case of errors, an error response with a list of error messages is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Submit Application Form

  • ID: post_submit_application_form
  • Operation: write
  • Entities: application form, job posting, field submission
  • Summary: The Submit Application Form API allows users to submit an application for a job posting. It requires the candidatesWrite permission and the request must be of type multipart/form-data. The request body must include the jobPostingId and applicationForm with fieldSubmissions. The API supports various field types such as Boolean, Date, Email, Number, and more. The response can be a success or an error, with detailed information about the submitted form instance and any form messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Survey Form Definition Information

  • ID: post_survey_form_definition_information
  • Operation: read
  • Entities: survey form definition, section, field
  • Summary: The Survey Form Definition Information API returns details about a single survey form definition by its ID. It requires the 'hiringProcessMetadataRead' permission. The request must include the 'surveyFormDefinitionId' in the body as a UUID. The response includes details such as the form's ID, title, archival status, form definition, and survey type. The API returns a success response with the form details or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Application

  • ID: post_update_application
  • Operation: write
  • Entities: application, candidate, source
  • Summary: The Update Application API allows users to update an existing application. It requires the candidatesWrite permission. The request must include the applicationId in the body, which is the ID of the application to be updated. Optional fields include sourceId, creditedToUserId, createdAt, and sendNotifications. The response will indicate success and provide details about the updated application, including its status, candidate information, interview stage, source, and more. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Approval Definition

  • ID: post_update_approval_definition
  • Operation: write
  • Entities: approval step, user, approval definition
  • Summary: The Update Approval Definition API allows users to create or update an approval definition for a specific entity that requires approval. The entity must be within the scope of an approval in Ashby that is managed by the API. The request requires the 'approvalsWrite' permission. The request body must include 'entityType', 'entityId', and 'approvalStepDefinitions'. If 'approvalStepDefinitions' is empty, approval will be skipped. The response will indicate success and provide details of the approval definition or errors if the request fails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Assessment Status

  • ID: post_update_assessment_status
  • Operation: write
  • Entities: candidate, assessment status, assessment
  • Summary: The 'Update Assessment Status' API allows users to update Ashby about the status of a started assessment. It requires the 'candidatesWrite' permission. The request body must include 'assessment_id' and 'timestamp'. Optional fields include 'assessment_status', 'assessment_profile_url', 'assessment_result', 'cancelled_reason', and 'metadata'. The response indicates the status of the update operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Candidate

  • ID: post_update_candidate
  • Operation: write
  • Entities: candidate, user, source
  • Summary: The Update Candidate API allows you to update an existing candidate's information in the system. It requires the candidatesWrite permission. The request body must include the candidateId as a required field, and can optionally include other fields such as name, email, phoneNumber, linkedInUrl, githubUrl, websiteUrl, alternateEmail, socialLinks, sourceId, creditedToUserId, location, createdAt, and sendNotifications. The response will indicate success or failure, and in the case of success, it will return the updated candidate details including id, name, emailAddresses, phoneNumbers, socialLinks, tags, applicationIds, fileHandles, profileUrl, and more.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Interview Schedule

  • ID: post_update_interview_schedule
  • Operation: write
  • Entities: interviewer, interview event, interview schedule
  • Summary: The Update Interview Schedule API allows users to update, add, or cancel interview events associated with an interview schedule. It requires the 'interviewsWrite' permission. To update an interview event, the 'interviewEventId' must be included in the request. The request body can either update an existing event or cancel an event. The response includes the status of the interview schedule and details of all associated interview events. The API returns a success response with the updated schedule details or an error response with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Interviewer Pool

  • ID: post_update_interviewer_pool
  • Operation: write
  • Entities: interviewer pool, training stage, training path
  • Summary: The 'Update Interviewer Pool' API allows users to update details of an existing interviewer pool. It requires the 'hiringProcessMetadataWrite' permission. The request body must include the 'interviewerPoolId' as a required field, and optionally, the 'title' and 'requiresTraining' fields. The response can either be a success or an error. A successful response includes details of the updated interviewer pool, such as its ID, title, archival status, training path, qualified members, and trainees. An error response includes a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Job Details

  • ID: post_update_job_details
  • Operation: write
  • Entities: job, location, team
  • Summary: The Update Job Details API allows users to update an existing job's details. It requires the 'jobsWrite' permission. The request must include the jobId in the body, and optionally, other fields such as title, teamId, locationId, defaultInterviewPlanId, and customRequisitionId. The response will indicate success and provide updated job details, including id, title, status, employmentType, and more. In case of errors, an error response with a list of error messages will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Job Posting

  • ID: post_update_job_posting
  • Operation: write
  • Entities: description, job posting, compensation
  • Summary: The jobPosting.update API allows users to update an existing job posting. It requires the 'jobsWrite' permission. The request body must include the 'jobPostingId' to identify the job posting to update. Optionally, a new 'title' and 'description' can be provided. The description must be in HTML format and only certain HTML tags are supported. The response will indicate success and return the updated job posting details, or provide error messages if the update fails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Opening

  • ID: post_update_opening
  • Operation: write
  • Entities: opening, job, department
  • Summary: The Update Opening API allows users to update an existing job opening. It requires the 'jobsWrite' permission. The request body can include parameters such as 'openingId', 'identifier', 'description', 'teamId', 'targetHireDate', 'targetStartDate', 'isBackfill', and 'employmentType'. The response will indicate success or failure and provide details about the updated opening, including its ID, state, and latest version information.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Webhook Setting

  • ID: post_update_webhook_setting
  • Operation: write
  • Entities: webhook
  • Summary: The Update Webhook Setting API allows users to update the settings of a webhook. The request requires the webhookId to identify which webhook setting to update. Optionally, users can provide enabled, requestUrl, or secretToken to modify the webhook's configuration. The response will indicate success and return the updated webhook settings, including its id, enabled status, requestUrl, secretToken, and webhookType. If the update fails, an error response will be returned with a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Upload Candidate File

  • ID: post_upload_candidate_file
  • Operation: write
  • Entities: candidate, file
  • Summary: The Upload Candidate File API allows users to upload a file to attach to a candidate's profile in Ashby. This API requires the 'candidatesWrite' permission and the request must be made with 'multipart/form-data' content type. The request body must include the 'candidateId' and the 'file' to be uploaded. Upon successful upload, the API returns a detailed response containing the candidate's information, including their name, email addresses, phone numbers, social links, tags, position, company, school, application IDs, file handles, custom fields, profile URL, source, credited user, timezone, and primary location. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

User Search by Email

  • ID: post_user_search_by_email
  • Operation: read
  • Entities: user
  • Summary: The User Search by Email API allows you to search for an Ashby user using their email address. It requires the 'organizationRead' permission. The request must include the email in the request body. The response will indicate success and provide user details such as id, firstName, lastName, email, globalRole, isEnabled, and updatedAt if successful. In case of an error, the response will include a list of error messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields