# Ashby Documentation > Documentation for Ashby ## Guides: Documentation - [Getting Started with Ashby](https://developers.ashbyhq.com/docs/getting-started.md) - [Creating a Custom Careers Page](https://developers.ashbyhq.com/docs/creating-a-custom-careers-page.md) - [Dedicated Partner Job Feeds](https://developers.ashbyhq.com/docs/dedicated-partner-job-feeds.md) - [Ashby Job Postings API](https://developers.ashbyhq.com/docs/public-job-posting-api.md) - [Creating an Assessments Integration](https://developers.ashbyhq.com/docs/creating-an-assessments-integration.md): A guide on how to integrate with Ashby's Assessments Framework - [Pagination and Incremental Synchronization](https://developers.ashbyhq.com/docs/pagination-and-incremental-sync.md) - [API Versions](https://developers.ashbyhq.com/docs/api-versions.md) ## Guides: Webhooks - [Setting up Webhooks](https://developers.ashbyhq.com/docs/setting-up-webhooks.md) - [Common Payload Data](https://developers.ashbyhq.com/docs/common-payload-data.md) - [Authenticating Webhooks](https://developers.ashbyhq.com/docs/authenticating-webhooks.md) - [Retries](https://developers.ashbyhq.com/docs/retries.md) - [Related Webhooks](https://developers.ashbyhq.com/docs/related-webhooks.md) ## API Reference: Ashby API - [Introduction](https://developers.ashbyhq.com/reference/introduction.md) - [Authentication](https://developers.ashbyhq.com/reference/authentication.md) - [Support](https://developers.ashbyhq.com/reference/support.md) - Conventions - [Endpoint Naming](https://developers.ashbyhq.com/reference/endpoint-naming.md) - [Responses & Errors](https://developers.ashbyhq.com/reference/responses.md) - [Pagination](https://developers.ashbyhq.com/reference/pagination.md) - [Syncing Records](https://developers.ashbyhq.com/reference/sync.md) - [Expansions](https://developers.ashbyhq.com/reference/expansions.md) - [Audit Log Vocabulary](https://developers.ashbyhq.com/reference/audit-log-vocabulary.md) - API Key - [apiKey.info](https://developers.ashbyhq.com/reference/apikeyinfo.md): Returns details for the API key used to make the request. **Requires the [`apiKeysRead`](authentication#permissions-apikeyinfo) permission.** - Application - [application.changeSource](https://developers.ashbyhq.com/reference/applicationchangesource.md): Change the source of an application. **Requires the [`candidatesWrite`](authentication#permissions-applicationchangesource) permission.** - [application.changeStage](https://developers.ashbyhq.com/reference/applicationchangestage.md): Change the stage of an application. **Requires the [`candidatesWrite`](authentication#permissions-applicationchangestage) permission.** - [application.create](https://developers.ashbyhq.com/reference/applicationcreate.md): Consider a candidate for a job (e.g. when sourcing a candidate for a job posting). If you're submitting an application as a job board, use the [`applicationForm.submit`](ref:applicationformsubmit)… - [application.info](https://developers.ashbyhq.com/reference/applicationinfo.md): Fetch application details by application id or by submitted form instance id (which is returned by the `applicationForm.submit` endpoint). If both `applicationId` and `submittedFormInstanceId` are… - [application.list](https://developers.ashbyhq.com/reference/applicationlist.md): Gets all applications in the organization. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [application.transfer](https://developers.ashbyhq.com/reference/applicationtransfer.md): Transfer an application to a different job. **Requires the [`candidatesWrite`](authentication#permissions-applicationtransfer) permission.** - [application.update](https://developers.ashbyhq.com/reference/applicationupdate.md): Update an application. To set values for custom fields on Applications, use the [`customField.setValue`](ref:customfieldsetvalue) endpoint. **Requires the… - [application.updateHistory](https://developers.ashbyhq.com/reference/applicationupdatehistory.md): Update the history of an application. Used to update stage timestamps and to delete history events. **Also requires the `Allow updating application history?` setting found in your admin API key… - [application.listHistory](https://developers.ashbyhq.com/reference/applicationlisthistory.md): Fetch a paginated list of application history items for an application. This endpoint supports pagination only (not incremental sync). See the [Pagination and Incremental… - [application.listCriteriaEvaluations](https://developers.ashbyhq.com/reference/applicationlistcriteriaevaluations.md): Fetch a paginated list of AI criteria evaluations for an application. This endpoint returns the AI-generated criteria evaluations that assess how well a candidate meets specific job requirements.… - [application.delete](https://developers.ashbyhq.com/reference/applicationdelete.md): Deletes an application by id. **Requires the [`candidatesDelete`](authentication#permissions-applicationdelete) permission.** - [application.addHiringTeamMember](https://developers.ashbyhq.com/reference/applicationaddhiringteammember-1.md): Adds an Ashby user to the hiring team at the application level. **Requires the [`candidatesWrite`](authentication#permissions-applicationaddhiringteammember) permission.** - [application.removeHiringTeamMember](https://developers.ashbyhq.com/reference/applicationremovehiringteammember-1.md): Unassigns a hiring team role from an Ashby user at the application level. **Requires the [`candidatesWrite`](authentication#permissions-applicationremovehiringteammember) permission.** - [application.change_stage](https://developers.ashbyhq.com/reference/applicationchange_stage.md): **Deprecated.** Use [`application.changeStage`](ref:applicationchangestage) instead. Change the stage of an application. **Requires the… - [application.change_source](https://developers.ashbyhq.com/reference/applicationchange_source.md): **Deprecated.** Use [`application.changeSource`](ref:applicationchangesource) instead. Change the source of an application. **Requires the… - Application Feedback - [applicationFeedback.list](https://developers.ashbyhq.com/reference/applicationfeedbacklist.md): List all interview scorecards and feedback submissions associated with an application. Each feedback submission contains: - **formDefinition**: The structure of the feedback form with all available… - [applicationFeedback.submit](https://developers.ashbyhq.com/reference/applicationfeedbacksubmit-1.md): Application feedback forms support a variety of field types. The values accepted for each field depend on the type of field that's being filled out: - `Boolean` - A boolean value -… - Application Feedback Request - [applicationFeedbackRequest.create](https://developers.ashbyhq.com/reference/applicationfeedbackrequestcreate-1.md): Request feedback on an application without scheduling an interview. The `interviewEventId` returned in the response can be provided to `applicationFeedback.submit` to complete the feedback request.… - Application Form - [applicationForm.submit](https://developers.ashbyhq.com/reference/applicationformsubmit.md): Submits a completed application form for a job posting. See [Creating a Custom Careers Page](/docs/creating-a-custom-careers-page) for the full flow. **Requires the… - Application Hiring Team Role - [applicationHiringTeamRole.list](https://developers.ashbyhq.com/reference/applicationhiringteamrolelist.md): Gets all available hiring team roles for applications in the organization. **Requires the [`candidatesRead`](authentication#permissions-applicationhiringteamrolelist) permission.** - Approval - [approval.list](https://developers.ashbyhq.com/reference/approvallist.md): Gets all approvals in the organization. You can optionally filter by entity type and entity ID. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for… - Approval Definition - [approvalDefinition.update](https://developers.ashbyhq.com/reference/approvaldefinitionupdate.md): Create or update an approval definition for a specific entity that requires approval. The entity requiring approval must be within scope of an approval in Ashby that is marked as being managed by the… - Archive Reason - [archiveReason.list](https://developers.ashbyhq.com/reference/archivereasonlist-1.md): Lists archive reasons. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-archivereasonlist) permission.** - Assessment - [assessment.addCompletedToCandidate](https://developers.ashbyhq.com/reference/assessmentaddcompletedtocandidate.md): Add a completed assessment to a candidate. **Requires the [`candidatesWrite`](authentication#permissions-assessmentaddcompletedtocandidate) permission.** - [assessment.start (Implemented by Partner)](https://developers.ashbyhq.com/reference/assessmentstart.md): The API for starting an assessment. Implemented by the partner, called by Ashby. - [assessment.list (Implemented by Partner)](https://developers.ashbyhq.com/reference/assessmentlist-implemented-by-partner.md): The API for listing assessments that the partner supports — implemented by the partner, but called by Ashby - [assessment.update](https://developers.ashbyhq.com/reference/assessmentupdate.md): Update Ashby about the status of a started assessment. `assessment_status` is required unless `cancelled_reason` is provided. **Requires the… - [assessment.cancel (Implemented by Partner)](https://developers.ashbyhq.com/reference/assessmentcancel.md): (Optional) Cancels an assessment. Implemented by the partner, called by Ashby. - [customFields.fetch (Implemented by Partner)](https://developers.ashbyhq.com/reference/assessmentpartnercustomfieldsfetch.md): The API for listing custom fields that can be synced to Ashby — implemented by the assessment partner, but called by Ashby. This endpoint is optional. Ashby only calls it for integrations that have… - Audit Log - [auditLog.list](https://developers.ashbyhq.com/reference/auditloglist.md): > Beta > > **This API is in active development and only available in a closed beta with early design partners.** Lists an organization's audit log entries, newest first. The `targetTypes` and… - Brand - [brand.list](https://developers.ashbyhq.com/reference/brandlist.md): Lists all brands for the organization. **Requires the [`organizationRead`](authentication#permissions-brandlist) permission.** - Candidate - [candidate.addTag](https://developers.ashbyhq.com/reference/candidateaddtag.md): Adds a tag to a candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidateaddtag) permission.** - [candidate.anonymize](https://developers.ashbyhq.com/reference/candidateanonymize.md): Anonymizes a candidate's personally identifiable information. **Requires the [`candidatesWrite`](authentication#permissions-candidateanonymize) permission.** - [candidate.create](https://developers.ashbyhq.com/reference/candidatecreate.md): Creates a new candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidatecreate) permission.** - [candidate.createNote](https://developers.ashbyhq.com/reference/candidatecreatenote.md): Creates a note on a candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidatecreatenote) permission.** - [candidate.info](https://developers.ashbyhq.com/reference/candidateinfo.md): Fetches details about a single candidate by id or external mapping id. **Requires the [`candidatesRead`](authentication#permissions-candidateinfo) permission.** - [candidate.list](https://developers.ashbyhq.com/reference/candidatelist.md): Lists all candidates in the organization with pagination and incremental sync support. Use the `syncToken` parameter to retrieve only candidates updated since your last sync. Use `createdAfter` to… - [candidate.listClientInfo](https://developers.ashbyhq.com/reference/candidatelistclientinfo.md): Lists client information records (IP, user agent) collected for a candidate. **Requires the [`candidatesRead`](authentication#permissions-candidatelistclientinfo) permission.** - [candidate.listNotes](https://developers.ashbyhq.com/reference/candidatelistnotes.md): Lists the notes that have been added to a candidate, ordered from newest to oldest. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for cursor usage… - [candidate.search](https://developers.ashbyhq.com/reference/candidatesearch.md): Searches for candidates by email and/or name. **Requires the [`candidatesRead`](authentication#permissions-candidatesearch) permission.** - [candidate.listProjects](https://developers.ashbyhq.com/reference/candidatelistprojects.md): Lists the projects a candidate has been added to. **Requires the [`candidatesRead`](authentication#permissions-candidatelistprojects) permission.** - [candidate.update](https://developers.ashbyhq.com/reference/candidateupdate.md): Updates an existing candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidateupdate) permission.** - [candidate.uploadFile](https://developers.ashbyhq.com/reference/candidateuploadfile.md): Uploads a file for a candidate. Accepts either a multipart/form-data request with a `file` file part, or a JSON body with a `fileHandle` previously created via `file.createFileUploadHandle`.… - [candidate.uploadResume](https://developers.ashbyhq.com/reference/candidateuploadresume.md): Uploads a resume for a candidate. Accepts either a multipart/form-data request with a `resume` file part, or a JSON body with a `resumeHandle` previously created via `file.createFileUploadHandle`.… - [candidate.removeTag](https://developers.ashbyhq.com/reference/candidateremovetag.md): Removes a tag from a candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidateremovetag) permission.** - [candidate.addEmailMessage](https://developers.ashbyhq.com/reference/candidateaddemailmessage.md): Attaches an existing email message (e.g. fetched from a partner provider) to a candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidateaddemailmessage) permission.** - [candidate.listFraudChecks](https://developers.ashbyhq.com/reference/candidatelistfraudchecks.md): Lists the fraud checks performed on a candidate. **Requires the [`candidatesRead`](authentication#permissions-candidatelistfraudchecks) permission.** - [candidate.setFraudStatus](https://developers.ashbyhq.com/reference/candidatesetfraudstatus.md): Updates the manual fraud-review status of a candidate. **Requires the [`candidatesWrite`](authentication#permissions-candidatesetfraudstatus) permission.** - [candidate.pushToHris](https://developers.ashbyhq.com/reference/candidatepushtohris.md): > Beta > > This feature is in beta and may not be available for all organizations. Pushes a candidate's data to an HRIS system (e.g. Workday, BambooHR, ADP). This endpoint triggers the "Add… - [candidate.removeProject](https://developers.ashbyhq.com/reference/candidateremoveproject-1.md): Removes the candidate from a project. **Requires the [`candidatesWrite`](authentication#permissions-candidateremoveproject) permission.** - [candidate.addProject](https://developers.ashbyhq.com/reference/candidateaddproject-1.md): Adds a candidate to a project. **Requires the [`candidatesWrite`](authentication#permissions-candidateaddproject) permission.** - [candidate.getRecentEmailMessages](https://developers.ashbyhq.com/reference/candidategetrecentemailmessages.md): > Beta > > This feature is in beta and may not be available for all organizations. Returns recent email messages for a candidate, newest first. A request without a `cursor` starts a point-in-time… - [candidate.searchSuggestions](https://developers.ashbyhq.com/reference/candidatesearchsuggestions.md): Searches for candidates by email and/or name and returns a minimal suggestion shape for typeahead use cases. **Requires the [`candidatesRead`](authentication#permissions-candidatesearchsuggestions)… - Candidate Tag - [candidateTag.list](https://developers.ashbyhq.com/reference/candidatetaglist.md): Lists all candidate tags. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [candidateTag.archive](https://developers.ashbyhq.com/reference/candidatetagarchive.md): Archives a candidate tag. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-candidatetagarchive) permission.** - [candidateTag.create](https://developers.ashbyhq.com/reference/candidatetagcreate-1.md): Creates a candidate tag. If a tag already exists with the given title, the existing tag will be returned. **Requires the… - Close Reason - [closeReason.list](https://developers.ashbyhq.com/reference/closereasonlist.md): Lists all close reasons for jobs or openings. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-closereasonlist) permission.** - Communication Template - [communicationTemplate.list](https://developers.ashbyhq.com/reference/communicationtemplatelist.md): List all enabled communication templates. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-communicationtemplatelist) permission.** - Custom Field - [customField.create](https://developers.ashbyhq.com/reference/customfieldcreate.md): Create a new custom field. Project custom fields do not support Currency, NumberRange, or CompensationRange. Job and opening custom fields can be configured so their values are editable only… - [customField.info](https://developers.ashbyhq.com/reference/customfieldinfo.md): Get information about a custom field. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-customfieldinfo) permission.** - [customField.list](https://developers.ashbyhq.com/reference/customfieldlist.md): Lists all custom fields. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [customField.setValue](https://developers.ashbyhq.com/reference/customfieldsetvalue.md): Set the value of a custom field for a given object. Pass `fieldValue: null` to clear the custom field. **Note:** When updating multiple custom fields on the same object, use… - [customField.setValues](https://developers.ashbyhq.com/reference/customfieldsetvalues.md): Set the values of multiple custom fields for a given object in a single call. This is the recommended approach when updating multiple fields on the same object to avoid race conditions that can occur… - [customField.updateSelectableValues](https://developers.ashbyhq.com/reference/customfieldupdateselectablevalues.md): Update the selectable values for a custom field. This endpoint merges the provided selectable values with the existing values for a custom field. **Merge behavior:** - **New values** (values not… - [customField.setReferenceIdentifier](https://developers.ashbyhq.com/reference/customfieldsetreferenceidentifier.md): > Beta > > This feature is in beta and may not be available for all organizations. Assign, change, or remove a custom field's reference ID. Read the current ID with… - Department & Team - [department.archive](https://developers.ashbyhq.com/reference/departmentarchive-1.md): Archives a department. **Requires the [`organizationWrite`](authentication#permissions-departmentarchive) permission.** - [department.restore](https://developers.ashbyhq.com/reference/departmentrestore-1.md): Restores a department. **Requires the [`organizationWrite`](authentication#permissions-departmentrestore) permission.** - [department.create](https://developers.ashbyhq.com/reference/departmentcreate-1.md): Creates a department. **Requires the [`organizationWrite`](authentication#permissions-departmentcreate) permission.** - [department.info](https://developers.ashbyhq.com/reference/departmentinfo.md): Fetch department details by id. **Requires the [`organizationRead`](authentication#permissions-departmentinfo) permission.** - [department.list](https://developers.ashbyhq.com/reference/departmentlist.md): Lists all departments. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [department.move](https://developers.ashbyhq.com/reference/departmentmove-1.md): Moves a department to another parent. **Requires the [`organizationWrite`](authentication#permissions-departmentmove) permission.** - [department.update](https://developers.ashbyhq.com/reference/departmentupdate-1.md): Updates a department. **Requires the [`organizationWrite`](authentication#permissions-departmentupdate) permission.** - Email Sender - [emailSender.list](https://developers.ashbyhq.com/reference/emailsenderlist.md): Lists the email addresses available to the acting identity for sending email through Ashby. Each result identifies whether the address is primary, a personal alias, an organization alias, or a… - Email Sync Blocked Address - [emailSyncBlockedAddress.create](https://developers.ashbyhq.com/reference/emailsyncblockedaddresscreate.md): Adds email addresses to the candidate email sync blocklist. Matching ignores case but is otherwise exact, so `person+tag@example.com` is blocked separately from `person@example.com`. A malformed… - [emailSyncBlockedAddress.delete](https://developers.ashbyhq.com/reference/emailsyncblockedaddressdelete.md): Removes email addresses from the candidate email sync blocklist. Addresses must match a listed entry exactly. Removing an address that is not on the list succeeds and is omitted from… - [emailSyncBlockedAddress.list](https://developers.ashbyhq.com/reference/emailsyncblockedaddresslist.md): Lists the email addresses on the candidate email sync blocklist, oldest first. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage… - Feedback Form Definition - [feedbackFormDefinition.info](https://developers.ashbyhq.com/reference/feedbackformdefinitioninfo.md): Returns a single feedback form by id **Requires the [`hiringProcessMetadataRead`](authentication#permissions-feedbackformdefinitioninfo) permission.** - [feedbackFormDefinition.list](https://developers.ashbyhq.com/reference/feedbackformdefinitionlist.md): Lists all feedback form definitions. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - File - [file.info](https://developers.ashbyhq.com/reference/fileinfo.md): Retrieve the URL for a file referenced by a public API file handle (candidate files, resumes, offer letters, and signature-request files). **Please note** that running this with Ashby-generated demo… - [file.createFileUploadHandle](https://developers.ashbyhq.com/reference/filecreatefileuploadhandle.md): Creates a presigned upload URL that allows uploading a file directly to storage, bypassing the need to send file bytes through the API. The presigned URL expires after 10 minutes. The… - Hiring Team - [hiringTeam.addMember](https://developers.ashbyhq.com/reference/hiringteamaddmember-1.md): Adds an Ashby user to the hiring team at the application, job, or opening level. **Requires the [`organizationWrite`](authentication#permissions-hiringteamaddmember) permission.** - [hiringTeam.removeMember](https://developers.ashbyhq.com/reference/hiringteamremovemember-1.md): Removes an Ashby user from the hiring team at the application, job, or opening level. **Requires the [`organizationWrite`](authentication#permissions-hiringteamremovemember) permission.** - Hiring Team Role - [hiringTeamRole.list](https://developers.ashbyhq.com/reference/hiringteamrolelist-1.md): Lists the possible hiring team roles in an organization **Requires the [`organizationRead`](authentication#permissions-hiringteamrolelist) permission.** - Interview - [interview.info](https://developers.ashbyhq.com/reference/interviewinfo.md): Fetch interview details by id. **Requires the [`interviewsRead`](authentication#permissions-interviewinfo) permission.** - [interview.list](https://developers.ashbyhq.com/reference/interviewlist.md): List all interviews. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - Interview Briefing - [interviewBriefing.info](https://developers.ashbyhq.com/reference/interviewbriefinginfo.md): Fetch the briefing data for an interview event. Returns the application, interview, per-interviewer status, and the feedback form definition id needed to render an interviewer-facing briefing or to… - Interview Event - [interviewEvent.list](https://developers.ashbyhq.com/reference/intervieweventlist.md): Lists interview events associated with an interview schedule. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples.… - Interview Plan - [interviewPlan.list](https://developers.ashbyhq.com/reference/interviewplanlist.md): List published interview plans. Draft interview plans are not returned. If `includeArchived` is true, archived interview plans are also included. Job-specific interview plans are only returned when… - Interview Schedule - [interviewSchedule.cancel](https://developers.ashbyhq.com/reference/interviewschedulecancel.md): Cancel an interview schedule by id. **Requires the [`interviewsWrite`](authentication#permissions-interviewschedulecancel) permission.** - [interviewSchedule.create](https://developers.ashbyhq.com/reference/interviewschedulecreate.md): Create a scheduled interview in Ashby. **Requires the [`interviewsWrite`](authentication#permissions-interviewschedulecreate) permission.** - [interviewSchedule.list](https://developers.ashbyhq.com/reference/interviewschedulelist.md): Gets all interview schedules in the organization. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [interviewSchedule.update](https://developers.ashbyhq.com/reference/interviewscheduleupdate.md): Update an interview schedule. This endpoint allows you to add, cancel, or update interview events associated with an interview schedule. In order to update an interview event on a schedule, the… - Interview Stage - [interviewStage.list](https://developers.ashbyhq.com/reference/interviewstagelist.md): List all interview stages for an interview plan in order. **Requires the [`interviewsRead`](authentication#permissions-interviewstagelist) permission.** - [interviewStage.info](https://developers.ashbyhq.com/reference/interviewstageinfo.md): Retrieves detailed information about a specific interview stage by its ID. **Requires the [`interviewsRead`](authentication#permissions-interviewstageinfo) permission.** - Interview Stage Group - [interviewStageGroup.list](https://developers.ashbyhq.com/reference/interviewstagegrouplist.md): List all interview stage groups in the organization in order. **Requires the [`interviewsRead`](authentication#permissions-interviewstagegrouplist) permission.** - Interviewer Pool - [interviewerPool.list](https://developers.ashbyhq.com/reference/interviewerpoollist.md): List all interviewer pools. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [interviewerPool.info](https://developers.ashbyhq.com/reference/interviewerpoolinfo.md): Get information about an interviewer pool. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-interviewerpoolinfo) permission.** - [interviewerPool.create](https://developers.ashbyhq.com/reference/interviewerpoolcreate.md): Create an interviewer pool. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-interviewerpoolcreate) permission.** - [interviewerPool.update](https://developers.ashbyhq.com/reference/interviewerpoolupdate.md): Update an interviewer pool. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-interviewerpoolupdate) permission.** - [interviewerPool.archive](https://developers.ashbyhq.com/reference/interviewerpoolarchive.md): Archives an interviewer pool. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-interviewerpoolarchive) permission.** - [interviewerPool.addUser](https://developers.ashbyhq.com/reference/interviewerpooladduser.md): Add a user to an interviewer pool. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-interviewerpooladduser) permission.** - [interviewerPool.removeUser](https://developers.ashbyhq.com/reference/interviewerpoolremoveuser.md): Remove a user from an interviewer pool. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-interviewerpoolremoveuser) permission.** - [interviewerPool.restore](https://developers.ashbyhq.com/reference/interviewerpoolrestore-1.md): Restores an archived interviewer pool. **Requires the [`hiringProcessMetadataWrite`](authentication#permissions-interviewerpoolrestore) permission.** - Job - [job.create](https://developers.ashbyhq.com/reference/jobcreate.md): Creates a new job. **Requires the [`jobsWrite`](authentication#permissions-jobcreate) permission.** - [job.info](https://developers.ashbyhq.com/reference/jobinfo.md): Fetches details of a single job by id. **Requires the [`jobsRead`](authentication#permissions-jobinfo) permission.** - [job.list](https://developers.ashbyhq.com/reference/joblist.md): Lists all jobs. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [job.setStatus](https://developers.ashbyhq.com/reference/jobsetstatus.md): Sets the status of a job. When setting a job to Closed, you can optionally provide a `closeReasonId` from `closeReason.list`. **Requires the [`jobsWrite`](authentication#permissions-jobsetstatus)… - [job.update](https://developers.ashbyhq.com/reference/jobupdate.md): Updates an existing job. At least one field other than `jobId` must be supplied. **Requires the [`jobsWrite`](authentication#permissions-jobupdate) permission.** - [job.updateCompensation](https://developers.ashbyhq.com/reference/jobupdatecompensation.md): Replaces the compensation tiers on a job. Pass an empty array to clear existing compensation. **Requires the [`jobsWrite`](authentication#permissions-jobupdatecompensation) permission.** - [job.search](https://developers.ashbyhq.com/reference/jobsearch.md): Searches jobs by title or custom requisition id. At least one of `title` or `requisitionId` must be provided. **Requires the [`jobsRead`](authentication#permissions-jobsearch) permission.** - [job.updateCompensationSettings](https://developers.ashbyhq.com/reference/jobupdatecompensationsettings.md): Updates compensation display settings for a job. Controls whether and how compensation is shown on job boards and postings for this specific job. Each field uses the null-means-inherit convention: -… - [job.startApprovalProcess](https://developers.ashbyhq.com/reference/jobstartapprovalprocess.md): Starts the approval process for a job. Creates an approval instance and submits it to the configured approvers. If an approval process instance is already pending for the job, returns an error… - Job Board - [jobBoard.list](https://developers.ashbyhq.com/reference/jobboardlist.md): List all enabled job boards. **Requires the [`jobsRead`](authentication#permissions-jobboardlist) permission.** - Job Interview Plan - [jobInterviewPlan.info](https://developers.ashbyhq.com/reference/jobinterviewplaninfo-1.md): Returns a job's interview plan, including activities and interviews that need to be scheduled at each stage. **Requires the [`jobsRead`](authentication#permissions-jobinterviewplaninfo) permission.** - Job Posting - [jobPosting.info](https://developers.ashbyhq.com/reference/jobpostinginfo.md): Retrieve an individual job posting. Set `includeUnpublishedJobPostings` to `true` when fetching an unpublished (draft) job posting. This flag is required for draft postings; published postings can… - [jobPosting.list](https://developers.ashbyhq.com/reference/jobpostinglist.md): Lists published job postings. By default, only published job postings are returned. Set `includeUnpublishedJobPostings` to `true` to also include unpublished (draft) job postings. **Important**: By… - [jobPosting.update](https://developers.ashbyhq.com/reference/jobpostingupdate.md): Updates an existing job posting. Set `includeUnpublishedJobPostings` to `true` when updating an unpublished (draft) job posting. This flag is required for draft postings; published postings can be… - [jobPosting.updateCompensation](https://developers.ashbyhq.com/reference/jobpostingupdatecompensation.md): Updates compensation for an existing job posting. Set `includeUnpublishedJobPostings` to `true` when updating an unpublished (draft) job posting. This flag is required for draft postings; published… - [jobPosting.setStatus](https://developers.ashbyhq.com/reference/jobpostingsetstatus.md): Sets the status of a job posting. Use this to publish or unpublish a job posting. Set `status` to `Published` to publish a draft job posting. The posting must have a title, description, and belong… - [jobPosting.create](https://developers.ashbyhq.com/reference/jobpostingcreate.md): Creates a new job posting for the specified job. Only `jobId` is required. When `title` is omitted the posting inherits the parent job's title. When `status` is omitted the posting is created in… - [jobPosting.updateCompensationSettings](https://developers.ashbyhq.com/reference/jobpostingupdatecompensationsettings.md): Updates compensation display settings for a job posting. Controls whether and how compensation is shown for this specific posting. Each field uses the null-means-inherit convention: - **Omitted**:… - Job Template - [jobTemplate.list](https://developers.ashbyhq.com/reference/jobtemplatelist.md): List all active and inactive job templates. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - Location - [location.info](https://developers.ashbyhq.com/reference/locationinfo.md): Gets details for a single location by id. **Requires the [`organizationRead`](authentication#permissions-locationinfo) permission.** - [location.archive](https://developers.ashbyhq.com/reference/locationarchive-1.md): Archives a location or location hierarchy. **Requires the [`organizationWrite`](authentication#permissions-locationarchive) permission.** - [location.create](https://developers.ashbyhq.com/reference/locationcreate-1.md): Creates a location or location hierarchy. **Requires the [`organizationWrite`](authentication#permissions-locationcreate) permission.** - [location.restore](https://developers.ashbyhq.com/reference/locationrestore-1.md): Restores an archived location or location hierarchy. **Requires the [`organizationWrite`](authentication#permissions-locationrestore) permission.** - [location.list](https://developers.ashbyhq.com/reference/locationlist-1.md): List all locations. Regions are not returned. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [location.move](https://developers.ashbyhq.com/reference/locationmove-1.md): Moves a location in location hierarchy. **Requires the [`organizationWrite`](authentication#permissions-locationmove) permission.** - [location.updateAddress](https://developers.ashbyhq.com/reference/locationupdateaddress-1.md): Update an address of a location or location hierarchy. **Requires the [`organizationWrite`](authentication#permissions-locationupdateaddress) permission.** - [location.updateName](https://developers.ashbyhq.com/reference/locationupdatename-1.md): Update location's name. **Requires the [`organizationWrite`](authentication#permissions-locationupdatename) permission.** - [location.updateWorkplaceType](https://developers.ashbyhq.com/reference/locationupdateworkplacetype-1.md): Update location's workplace type. **Requires the [`organizationWrite`](authentication#permissions-locationupdateworkplacetype) permission.** - [location.updateExternalName](https://developers.ashbyhq.com/reference/locationupdateexternalname-1.md): Update a location's external (candidate-facing) name. **Requires the [`organizationWrite`](authentication#permissions-locationupdateexternalname) permission.** - Notetaker Transcript - [notetakerTranscript.info](https://developers.ashbyhq.com/reference/notetakertranscriptinfo.md): Fetches metadata and a pre-signed download URL for an AI Notetaker transcript recording. **Prerequisites:** - Your organization must have the **AI Notetaker add-on**. If your organization does not… - Offer - [offer.create](https://developers.ashbyhq.com/reference/offercreate.md): Creates a new Offer Offer forms support a variety of field types. The values accepted for each field depend on the type of field that's being filled out: - `Boolean` - A boolean value. - `Currency`… - [offer.approve](https://developers.ashbyhq.com/reference/offerapprove.md): Approves an offer or a specific approval step within an offer's approval process. This endpoint mimics the behavior of the "Force Approve" function in the Ashby app, where an admin can override… - [offer.info](https://developers.ashbyhq.com/reference/offerinfo.md): Returns details about a single offer by id. Set `expand.individualSignedPacketDocuments` to true to include file handles for the individual signed documents in an offer packet. **Requires the… - [offer.list](https://developers.ashbyhq.com/reference/offerlist.md): Get a list of all offers with their latest version. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [offer.start](https://developers.ashbyhq.com/reference/offerstart.md): The offer.start endpoint creates and returns an offer version instance that can be filled out and submitted using the `offer.create` endpoint. In order to create a new offer version for a candidate… - [offer.update](https://developers.ashbyhq.com/reference/offerupdate.md): Updates an existing Offer An Offer custom field submission can identify its field by `path` or `referenceIdentifier`. If both are provided, they must identify the same field. Ordinary form fields… - [offer.startApprovalProcess](https://developers.ashbyhq.com/reference/offerstartapprovalprocess.md): Starts the approval process for an offer in a "WaitingOnApprovalStart" state. Once started, the approval is sent to the configured approvers. The offer version ID can be obtained from the offer… - [offer.setStatus](https://developers.ashbyhq.com/reference/offersetstatus.md): Updates an offer's acceptance status. Ashby derives the offer status from the provided acceptance status; `offerStatus` can't be set independently. **Requires the… - [offer.setDecidedAt](https://developers.ashbyhq.com/reference/offersetdecidedat.md): Updates an offer's decidedAt timestamp. **Requires the [`offersWrite`](authentication#permissions-offersetdecidedat) permission.** - [offer.reject](https://developers.ashbyhq.com/reference/offerreject.md): Rejects the current step in an offer's approval process. Provide the current approval step and an approver from [`approval.list`](ref:approvallist). Rejecting the step rejects the approval process… - Offer Process - [offerProcess.start](https://developers.ashbyhq.com/reference/offerprocessstart-1.md): Starts an offer process for a candidate. **Requires the [`offersWrite`](authentication#permissions-offerprocessstart) permission.** - Openings - [opening.info](https://developers.ashbyhq.com/reference/openinginfo-1.md): Retrieves an opening by its UUID. **Requires the [`jobsRead`](authentication#permissions-openinginfo) permission.** - [opening.create](https://developers.ashbyhq.com/reference/openingcreate-1.md): Creates an opening. To set values of custom fields on Openings, use the [`customField.setValue`](ref:customfieldsetvalue) endpoint. **Requires the… - [opening.update](https://developers.ashbyhq.com/reference/openingupdate-1.md): Updates an opening. To set values for custom fields on Openings, use the [`customField.setValue`](ref:customfieldsetvalue) endpoint. **Requires the… - [opening.setArchived](https://developers.ashbyhq.com/reference/openingsetarchived-1.md): Sets the archived state of an opening. **Requires the [`jobsWrite`](authentication#permissions-openingsetarchived) permission.** - [opening.setOpeningState](https://developers.ashbyhq.com/reference/openingsetopeningstate-1.md): Sets the state of an opening. **Requires the [`jobsWrite`](authentication#permissions-openingsetopeningstate) permission.** - [opening.addJob](https://developers.ashbyhq.com/reference/openingaddjob-1.md): Adds a job to an opening. **Requires the [`jobsWrite`](authentication#permissions-openingaddjob) permission.** - [opening.removeJob](https://developers.ashbyhq.com/reference/openingremovejob-1.md): Removes a job from an opening. **Requires the [`jobsWrite`](authentication#permissions-openingremovejob) permission.** - [opening.addLocation](https://developers.ashbyhq.com/reference/openingaddlocation-1.md): Adds a location to an opening. **Requires the [`jobsWrite`](authentication#permissions-openingaddlocation) permission.** - [opening.removeLocation](https://developers.ashbyhq.com/reference/openingremovelocation-1.md): Removes a location from an opening. **Requires the [`jobsWrite`](authentication#permissions-openingremovelocation) permission.** - [opening.list](https://developers.ashbyhq.com/reference/openinglist-1.md): Lists openings. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - [opening.search](https://developers.ashbyhq.com/reference/openingsearch-1.md): Searches for openings by identifier. **Requires the [`jobsRead`](authentication#permissions-openingsearch) permission.** - Project - [project.search](https://developers.ashbyhq.com/reference/projectsearch.md): Search for projects by title. Responses are limited to 100 results. Consider refining your search or using /project.list to paginate through all projects, if you approach this limit. This API is for… - [project.info](https://developers.ashbyhq.com/reference/projectinfo-1.md): Retrieves a project by its UUID. **Requires one of the [`projectsRead`](authentication#permissions-projectinfo) or [`candidatesRead`](authentication#permissions-projectinfo) permissions.** - [project.list](https://developers.ashbyhq.com/reference/projectlist-1.md): Lists projects. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires one of the… - [project.create](https://developers.ashbyhq.com/reference/projectcreate.md): Creates a project. The effective actor becomes the author, including authorized on-behalf-of requests. Confidential projects are available on Plus, Legacy Plus, and Enterprise plans. Authors retain… - [project.update](https://developers.ashbyhq.com/reference/projectupdate.md): Updates a project's title or description, including archived projects. Requires at least one editable field. Omitted fields remain unchanged; null or empty descriptions clear the existing content.… - [project.archive](https://developers.ashbyhq.com/reference/projectarchive.md): Archives a project. The effective actor must have permission to edit the project, including authorized on-behalf-of requests. Calling this endpoint on an already archived project succeeds. Candidate… - [project.restore](https://developers.ashbyhq.com/reference/projectrestore.md): Restores a project. The effective actor must have permission to edit the project, including authorized on-behalf-of requests. Calling this endpoint on an already active project succeeds. Candidate… - [project.setCustomFieldValue](https://developers.ashbyhq.com/reference/projectsetcustomfieldvalue.md): Updates one custom field on a project, including archived projects. Returns the affected entry, including value: null when already empty. The effective actor must have permission to edit the project.… - [project.setCustomFieldValues](https://developers.ashbyhq.com/reference/projectsetcustomfieldvalues.md): Updates a nonempty batch of distinct custom fields on a project, including archived projects. Returns affected entries in request order, including value: null for cleared fields. Duplicate field IDs… - Referral - [referral.create](https://developers.ashbyhq.com/reference/referralcreate.md): Creates a referral **Requires the [`candidatesWrite`](authentication#permissions-referralcreate) permission.** - [referral.list](https://developers.ashbyhq.com/reference/referrallist.md): Gets all referral submissions that are visible to the acting user. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples.… - [referral.delete](https://developers.ashbyhq.com/reference/referraldelete.md): Deletes a referral submission by id. The `referralId` is the `id` returned by [`referral.list`](https://developers.ashbyhq.com/reference/referrallist). The optional `clearAttribution` field controls… - Referral Form - [referralForm.info](https://developers.ashbyhq.com/reference/referralforminfo.md): Fetches the default referral form or creates a default referral form if none exists. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-referralforminfo) permission.** - Report - [report.generate](https://developers.ashbyhq.com/reference/reportgenerate.md): Generates a new report or polls the status of an existing report generation. **Two-step process:** 1. Call with only `reportId` to start generation and receive a `requestId`. 2. Poll with both… - [report.synchronous](https://developers.ashbyhq.com/reference/reportsynchronous.md): Retrieves report data synchronously. **Timeout:** 30 seconds. If a report is timing out, use the asynchronous `report.generate` instead. **Result Style (`resultStyle`):** - `inline` (default):… - Sequence - [sequence.cancel](https://developers.ashbyhq.com/reference/sequencecancel.md): Cancels a running sourcing sequence (campaign) for a candidate. **Requires one of the [`candidatesWrite`](authentication#permissions-sequencecancel) or… - [sequence.info](https://developers.ashbyhq.com/reference/sequenceinfo.md): Retrieves a candidate's sourcing sequence enrollment when it is visible to the acting user. Not-started email stages include resolved, editable subject and HTML body content. Started sequences… - [sequence.add](https://developers.ashbyhq.com/reference/sequenceadd.md): Enrolls a candidate in a reusable sourcing sequence. Set start to false to create an editable draft, or true to validate and start the sequence immediately. The optional applicationId fixes the… - [sequence.updateStage](https://developers.ashbyhq.com/reference/sequenceupdatestage.md): Replaces the supplied subject or HTML body of one email stage in a not-started sourcing sequence. At least one of subject or body is required. The reusable sequence template is not changed. Subject… - [sequence.start](https://developers.ashbyhq.com/reference/sequencestart.md): Validates and starts an existing NotStarted sourcing sequence draft owned by the acting user. Drafts created with x-on-behalf-of must be started with the same acting user. Validation errors and… - [sequence.discard](https://developers.ashbyhq.com/reference/sequencediscard.md): Permanently discards a NotStarted sourcing sequence draft owned by the acting user. Drafts created with x-on-behalf-of must be discarded using the same user. Repeating a successful discard is safe.… - [sequence.list](https://developers.ashbyhq.com/reference/sequencelist.md): Lists visible started and ended sourcing sequence enrollments across the organization, optionally filtered to one candidate. Results include Running, Paused, Completed, Cancelled, and Unsubscribed… - Sequence Template - [sequenceTemplate.info](https://developers.ashbyhq.com/reference/sequencetemplateinfo.md): Retrieves metadata for a reusable sourcing sequence template visible to the caller. Archived templates may be returned. Message subjects and bodies are not exposed. Returns… - [sequenceTemplate.list](https://developers.ashbyhq.com/reference/sequencetemplatelist.md): Lists reusable sourcing sequence templates visible to the caller. Returns template and cadence metadata only; message subjects and bodies are not exposed. Archived templates are excluded unless the… - Source - [source.list](https://developers.ashbyhq.com/reference/sourcelist-1.md): List all sources **Requires the [`hiringProcessMetadataRead`](authentication#permissions-sourcelist) permission.** - Source Tracking Links - [sourceTrackingLink.list](https://developers.ashbyhq.com/reference/sourcetrackinglinklist-1.md): List all source custom tracking links **Requires the [`hiringProcessMetadataRead`](authentication#permissions-sourcetrackinglinklist) permission.** - Survey Form Definition - [surveyFormDefinition.info](https://developers.ashbyhq.com/reference/surveyformdefinitioninfo.md): Returns details about a single survey form definition by id. **Requires the [`hiringProcessMetadataRead`](authentication#permissions-surveyformdefinitioninfo) permission.** - [surveyFormDefinition.list](https://developers.ashbyhq.com/reference/surveyformdefinitionlist.md): Lists all survey form definitions. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - Survey Request - [surveyRequest.create](https://developers.ashbyhq.com/reference/surveyrequestcreate.md): This endpoint generates a survey request and returns a survey URL. You can send this URL to a candidate to allow them to complete a survey. **Note that calling this endpoint will not automatically… - [surveyRequest.list](https://developers.ashbyhq.com/reference/surveyrequestlist.md): Lists all survey requests. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - Survey Submission - [surveySubmission.create](https://developers.ashbyhq.com/reference/surveysubmissioncreate.md): Creates a survey submission for a candidate and application. **Requires the [`candidatesWrite`](authentication#permissions-surveysubmissioncreate) permission.** - [surveySubmission.list](https://developers.ashbyhq.com/reference/surveysubmissionlist.md): Lists all survey submissions of a given `surveyType`. See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples. **Requires the… - Take Home Assignment - [takeHomeAssignment.list](https://developers.ashbyhq.com/reference/takehomeassignmentlist.md): Lists take-home assignments visible to the caller, including candidate submission metadata and reviewer feedback status, and links each assignment to its interview definition through `interviewId`.… - [takeHomeAssignment.info](https://developers.ashbyhq.com/reference/takehomeassignmentinfo.md): Retrieves a single take-home assignment by id and links it to its interview definition through `interviewId`. Pass `expand: ["interview"]` to include that definition. Returns… - User - [user.info](https://developers.ashbyhq.com/reference/userinfo.md): Retrieves detailed information about a specific user by their ID. **Requires the [`organizationRead`](authentication#permissions-userinfo) permission.** - [user.list](https://developers.ashbyhq.com/reference/userlist.md): Lists all users in the organization with pagination support. By default, only active (enabled) users are returned. Use `includeDeactivated: true` to include deactivated users. Supports incremental… - [user.search](https://developers.ashbyhq.com/reference/usersearch.md): Searches for users by email address. Returns an array containing the user if found, or an empty array if no user with the given email exists. **Requires the… - [user.interviewerSettings](https://developers.ashbyhq.com/reference/userinterviewersettings.md): Get interviewer settings for a user. When called with `X-On-Behalf-Of`, the acting user must have permission to administer users unless they are requesting their own data. **Requires the… - [user.updateInterviewerSettings](https://developers.ashbyhq.com/reference/userupdateinterviewersettings.md): Update interviewer settings for a user. Either limit can be provided, or both can be provided. If only one is provided, the other will remain unchanged. If a limit is provided but set to null, it… - [user.createInterviewerPause](https://developers.ashbyhq.com/reference/usercreateinterviewerpause.md): Creates an interviewer pause for a user. While paused, the user will not be scheduled for interviews. A user can only have one interviewer pause at a time (whether active or scheduled). Attempting… - [user.listInterviewerPauses](https://developers.ashbyhq.com/reference/userlistinterviewerpauses.md): Lists all active or scheduled interviewer pauses for a user. When called with `X-On-Behalf-Of`, the acting user must have permission to administer users unless they are requesting their own data.… - [user.deleteInterviewerPause](https://developers.ashbyhq.com/reference/userdeleteinterviewerpause.md): Deletes an interviewer pause. **Requires the [`organizationWrite`](authentication#permissions-userdeleteinterviewerpause) permission.** - [user.setCustomFieldValue](https://developers.ashbyhq.com/reference/usersetcustomfieldvalue.md): Set the value of a custom field on an employee. The values accepted in the `fieldValue` param depend on the type of field being updated. See the… - [user.setCustomFieldValues](https://developers.ashbyhq.com/reference/usersetcustomfieldvalues.md): Set the values of multiple custom fields on an employee in a single call. This is the recommended approach when updating multiple fields on the same employee to avoid race conditions that can occur… - Version - [version.list](https://developers.ashbyhq.com/reference/versionlist.md): Lists available API versions and their lifecycle status. **Requires the [`apiKeysRead`](authentication#permissions-versionlist) permission.** - Webhook - [webhook.info](https://developers.ashbyhq.com/reference/webhookinfo.md): Retrieves information about a specific webhook setting by its ID. **Requires the [`apiKeysRead`](authentication#permissions-webhookinfo) permission.** - [webhook.create](https://developers.ashbyhq.com/reference/webhookcreate-1.md): Creates a webhook setting. **Requires the [`apiKeysWrite`](authentication#permissions-webhookcreate) permission.** - [webhook.update](https://developers.ashbyhq.com/reference/webhookupdate-1.md): Updates a webhook setting. One of `enabled`, `requestUrl`, or `secretToken` must be provided. **Requires the [`apiKeysWrite`](authentication#permissions-webhookupdate) permission.** - [webhook.delete](https://developers.ashbyhq.com/reference/webhookdelete-1.md): Deletes a webhook setting. **Requires the [`apiKeysWrite`](authentication#permissions-webhookdelete) permission.** - Webhook Payloads - [applicationSubmit](https://developers.ashbyhq.com/reference/applicationsubmitwebhook.md): Triggered when a candidate submits an application or when a candidate is manually added to Ashby. This webhook is not triggered for bulk imports or integration syncs. - [applicationUpdate](https://developers.ashbyhq.com/reference/applicationupdatewebhook.md): Triggered when there's an update to an application. This includes: - Changes to application fields (source, custom fields, etc.) - Job transfers (when an application is moved to a different job) -… - [candidateHire](https://developers.ashbyhq.com/reference/candidatehirewebhook.md): Triggered when a candidate is hired (including candidates that are hired on confidential jobs). Includes the application and most recent accepted offer (if one exists). Also triggers… - [candidateStageChange](https://developers.ashbyhq.com/reference/candidatestagechangewebhook.md): Triggered when a candidate changes stages in an application. Also triggered by [candidateHire](ref:candidatehirewebhook) - [candidateDelete](https://developers.ashbyhq.com/reference/candidatedeletewebhook.md): Triggered when a candidate is deleted. Includes the deleted candidate id. - [candidateMerge](https://developers.ashbyhq.com/reference/candidatemergewebhook.md): Triggered when a candidate is merged. Includes the deleted candidate's id and merged candidate data. - [interviewPlanTransition](https://developers.ashbyhq.com/reference/interviewplantransitionwebhook.md): Triggered when a job's interview plan is switched to a different plan. Sends interview plan data and ids for the interview stage mappings. Also triggers [jobUpdate](ref:jobupdatewebhook) - [interviewScheduleCreate](https://developers.ashbyhq.com/reference/interviewschedulecreatewebhook.md): The webhook is called when an interview schedule is created. Also triggers [interviewScheduleUpdate](ref:interviewscheduleupdatewebhook) - [interviewScheduleUpdate](https://developers.ashbyhq.com/reference/interviewscheduleupdatewebhook.md): The webhook is called when an interview schedule is updated, including when interviews that are part of the schedule are scheduled, updated, or cancelled. Also triggered by… - [jobCreate](https://developers.ashbyhq.com/reference/jobcreatewebhook.md): Triggered when a job is created - [jobUpdate](https://developers.ashbyhq.com/reference/jobupdatewebhook.md): Triggered when a job is updated. Also triggered by [interviewPlanTransition](ref:interviewplantransitionwebhook) - [jobPostingUpdate](https://developers.ashbyhq.com/reference/jobpostingupdatewebhook.md): Triggered when a job posting is updated. Also triggered by [jobPostingPublish](ref:jobpostingpublishwebhook) and [jobPostingUnpublish](ref:jobpostingunpublishwebhook) - [jobPostingPublish](https://developers.ashbyhq.com/reference/jobpostingpublishwebhook.md): Triggered when a job posting is published. Also triggers [jobPostingUpdate](ref:jobpostingupdatewebhook) - [jobPostingUnpublish](https://developers.ashbyhq.com/reference/jobpostingunpublishwebhook.md): Triggered when a job posting is unpublished. Also triggers [jobPostingUpdate](ref:jobpostingupdatewebhook) - [offerCreate](https://developers.ashbyhq.com/reference/offercreatewebhook.md): Triggered when a new offer process is created for a candidate - [offerDelete](https://developers.ashbyhq.com/reference/offerdeletewebhook.md): Triggered when an offer process is deleted - [offerUpdate](https://developers.ashbyhq.com/reference/offerupdatewebhook.md): Triggered when an offer is updated - [openingCreate](https://developers.ashbyhq.com/reference/openingcreatewebhook.md): Triggered when a opening is created - [pushToHRIS](https://developers.ashbyhq.com/reference/pushtohriswebhook.md): Triggered when a candidate is pushed to an HRIS system - [ping](https://developers.ashbyhq.com/reference/pingwebhook.md): Called to check that the webhook URL is live - [surveySubmit](https://developers.ashbyhq.com/reference/surveysubmitwebhook.md): The webhook is triggered when a candidate submits a non-anonymous survey. It will not fire for anonymous survey submissions. Depending on the type of survey that was submitted, survey responses may… - [signatureRequestUpdate](https://developers.ashbyhq.com/reference/signaturerequestupdatewebhook.md): Triggered on updates to requests for e-signatures: when requests are sent, cancelled, completed, or deleted. Depending on the type of request, additional context will be included in the webhook… - [jobPostingDelete](https://developers.ashbyhq.com/reference/jobpostingdeletewebhook.md): Triggered when a job posting is deleted. Includes the deleted job posting id and its associated job id. - [takeHomeAssignmentAssigned](https://developers.ashbyhq.com/reference/takehomeassignmentassignedwebhook.md): The webhook is called when a take-home assignment enters Waiting On Submission. - [takeHomeAssignmentCancelled](https://developers.ashbyhq.com/reference/takehomeassignmentcancelledwebhook.md): The webhook is called when a take-home assignment is cancelled. - [takeHomeAssignmentCompleted](https://developers.ashbyhq.com/reference/takehomeassignmentcompletedwebhook.md): The webhook is called when a take-home assignment is completed. - [takeHomeAssignmentSubmitted](https://developers.ashbyhq.com/reference/takehomeassignmentsubmittedwebhook.md): The webhook is called when a candidate submits a take-home assignment and it enters Waiting On Feedback. - [candidateRecentEmailMessagesUpdated](https://developers.ashbyhq.com/reference/candidaterecentemailmessagesupdatedwebhook.md): > Beta: This webhook may not be available for all organizations. Triggered when a candidate's recent email messages may have changed. Treat this webhook as a signal to perform a complete refresh,… - [openingDelete](https://developers.ashbyhq.com/reference/openingdeletewebhook.md): Triggered when an opening is deleted - [openingUpdate](https://developers.ashbyhq.com/reference/openingupdatewebhook.md): Triggered when an opening is updated ## Changelog - [Fix Table-Backed Custom Field Value Labels](https://developers.ashbyhq.com/changelog/2026-09-24-fix-table-backed-custom-field-value-labels.md) - [Add Opening Update and Delete Webhooks](https://developers.ashbyhq.com/changelog/2026-09-29-add-opening-update-delete-webhooks.md) - [Fix Rejection Emails Scheduled By Failed Stage Changes](https://developers.ashbyhq.com/changelog/2026-09-28-fix-application-change-stage-archive-email-on-failure.md) - [Filter Communication Templates By Ownership](https://developers.ashbyhq.com/changelog/2026-09-29-filter-communication-templates-by-ownership.md) - [Add Custom Field Reference IDs](https://developers.ashbyhq.com/changelog/2026-09-28-add-custom-field-reference-ids.md) - [Add API Version Discovery](https://developers.ashbyhq.com/changelog/2026-09-22-add-api-version-discovery.md) - [Versioned API Documentation](https://developers.ashbyhq.com/changelog/2026-09-04-versioned-api-documentation.md) - [Project Management Endpoints Generally Available](https://developers.ashbyhq.com/changelog/2026-09-21-project-management-endpoints-ga.md) - [Expand Offer Packet Documents](https://developers.ashbyhq.com/changelog/2026-09-23-expand-offer-packet-documents.md) - [Improve Error Message for Referral Creation by the Credited User](https://developers.ashbyhq.com/changelog/2026-09-23-referral-create-detailed-error-for-self-referral.md)