# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for ATS Subpackage Candidates API version: 1.0.0 extends: openapi/merge-subpackage-candidates-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 7 - target: $.paths['/ats/v1/candidates'].get update: x-apievangelist-phrasing: intent: List candidates effect: read questions: - How do I find a candidate by email address in the ATS? - Can I list candidates with a particular tag? - Which candidates were added to the pipeline this week? instructions: - text: List candidates with email {email_addresses}. slots: email_addresses: query.email_addresses - text: Find candidates named {first_name} {last_name}. slots: first_name: query.first_name last_name: query.last_name - text: Show candidates tagged {tags}. slots: tags: query.tags method: generated generated: '2026-09-26' - target: $.paths['/ats/v1/candidates'].post update: x-apievangelist-phrasing: intent: Add a candidate effect: write questions: - How do I add a new candidate to a customer's applicant tracking system? - Can I create a candidate on behalf of a specific recruiter? instructions: - text: Create candidate {model} as recruiter {remote_user_id}. slots: model: requestBody.model remote_user_id: requestBody.remote_user_id - text: Add a new applicant with details {model}, acting as user {remote_user_id}. slots: model: requestBody.model remote_user_id: requestBody.remote_user_id method: generated generated: '2026-09-26' - target: $.paths['/ats/v1/candidates/{id}'].get update: x-apievangelist-phrasing: intent: Get a candidate effect: read questions: - What does the ATS have on file for one candidate? - Can I view a candidate's applications and attachments together? instructions: - text: Get candidate {id}. slots: id: path.id - text: Fetch candidate {id} with {expand} expanded. slots: id: path.id expand: query.expand method: generated generated: '2026-09-26' - target: $.paths['/ats/v1/candidates/{id}'].patch update: x-apievangelist-phrasing: intent: Update a candidate's profile effect: write questions: - How do I edit an existing candidate's contact details? - Can I change a candidate profile as a particular recruiter? instructions: - text: Update candidate {id} with {model} as user {remote_user_id}. slots: id: path.id model: requestBody.model remote_user_id: requestBody.remote_user_id - text: 'Edit existing applicant {id}: {model}, on behalf of {remote_user_id}.' slots: id: path.id model: requestBody.model remote_user_id: requestBody.remote_user_id method: generated generated: '2026-09-26' - target: $.paths['/ats/v1/candidates/ignore/{model_id}'].post update: x-apievangelist-phrasing: intent: Stop syncing a candidate effect: destructive questions: - How do I exclude a candidate from future syncs, for example on a GDPR request? - What happens to a candidate's record when I ignore it? instructions: - text: Ignore candidate {model_id} because {reason}. slots: model_id: path.model_id reason: requestBody.reason - text: Stop syncing applicant {model_id}, reason {reason}, with note {message}. slots: model_id: path.model_id reason: requestBody.reason message: requestBody.message method: generated generated: '2026-09-26' - target: $.paths['/ats/v1/candidates/meta/patch/{id}'].get update: x-apievangelist-phrasing: intent: See which candidate fields can be updated effect: read questions: - Which fields can I change on a given candidate? - What does the ATS accept when editing a candidate? instructions: - text: Get the update metadata for candidate {id}. slots: id: path.id - text: Show editable fields on applicant {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/ats/v1/candidates/meta/post'].get update: x-apievangelist-phrasing: intent: See which fields creating a candidate needs effect: read questions: - What fields are required to add a candidate in this ATS? - Before creating a candidate, how do I check which fields are supported? instructions: - text: Get candidate creation metadata for linked account {account_token}. slots: account_token: header.X-Account-Token - text: Show the fields needed to add a new candidate. method: generated generated: '2026-09-26'