hires_add_candidate_tags
Add one or more tags to a candidate. Used for campaign tagging, qualification labels, and source attribution.
hires_remove_candidate_tag
Remove a specific tag from a candidate.
hires_batch_add_tags
Add tags to multiple candidates in one request (max 100). Returns per-item results with partial success support.
hires_batch_remove_tags
Remove tags from multiple candidates in one request (max 100). Returns per-item results with partial success support.
hires_list_candidate_files
List all files attached to a candidate (resumes and other documents). Each entry has uuid, absolute download url (use Bearer auth), relative_time, file metadata (orig_file_name, file_ext, file_type/MIME, readable_size), and type (resume/other).
hires_upload_candidate_file
Upload a file for a candidate using a base64 payload. Used for resume ingestion, portfolio uploads, and document attachment.
hires_get_candidate_resume
Get the primary resume for a candidate. Returns uuid, absolute download url (use Bearer auth), relative_time, file metadata, type. Use include='text_content' to also get the parsed plain-text content in a `text` field without downloading the file.
hires_list_candidate_activities
List timeline activities for a candidate (comments, stage moves, AI responses, etc.). Supports filtering by event type.
hires_disqualify_candidate
Disqualify a candidate from all active applications. Optionally provide rejection reason IDs. Returns affected application IDs.
hires_list_candidate_interviews
List all interviews for a candidate across all applications. Useful for timeline views and scheduling conflict detection.
hires_list_candidate_messages
List email and messaging history for a candidate. Use is_scheduled=1 to filter only pending scheduled messages.
hires_send_candidate_message
Schedule an email message to a candidate. If scheduled_at is omitted, the message is scheduled for 15 minutes after creation.
hires_list_applications
List applications across all accessible jobs. Supports filtering by candidate, job, stage, status, AI score range, and date ranges. Use for pipeline analytics, sync jobs, and ATS dashboards.
hires_create_application
Create an application by linking an existing candidate to a job. Use for sourcing workflows and manual application ingestion. The candidate must already exist.
hires_get_application
Get full application details including stage, status, and rejection context. Recommended before mutating stage transitions.
hires_update_application
Update application fields such as stage, disqualification flag, and CV. For explicit stage transitions prefer hires_move_application or hires_advance_application.
hires_delete_application
Permanently delete an application. This removes it from all list and view queries.
hires_move_application
Move an application to a specific pipeline stage. Use this for explicit stage transitions in workflow orchestration. You need the target stage_id (get it from the job's pipeline_stages).
hires_advance_application
Advance an application to the next pipeline stage according to workflow order. No stage_id needed -- the system determines the next stage automatically.
hires_hire_application
Mark an application as hired. This is the finalization step in a hiring workflow. The application status changes to 'hired' and hired_at is set.
hires_reject_application
Reject an application with an optional rejection reason. Use GET /taxonomy/rejection-reasons to list available reason IDs. Set suppress_notification to skip the rejection email.
hires_unreject_application
Undo a rejection and reopen a previously rejected application. The status returns to active and rejected_at is cleared.
hires_transfer_application
Transfer an application to another job. A new application is created on the target job. Optionally specify a stage on the target job's pipeline.
hires_get_ai_score
Get the structured AI score for an application, including per-criterion scores, justifications, and follow-up questions. Returns null score if the application has not been AI-scored.
hires_list_application_attachments
List all file attachments linked to an application (resumes, cover letters, documents). Returns file metadata and download URLs.
hires_upload_application_attachment
Upload a file attachment to an application. Provide the file as base64-encoded data. Commonly used for signed documents and interviewer artifacts.
hires_list_application_evaluations
List all filled evaluation forms for an application. Each evaluation includes the evaluator, summary score (strong-yes to strong-no), and summary text.
hires_create_interview
Schedule a new interview for an application. Provide start/end times as Unix timestamps and a list of interviewer user IDs. Location is resolved to an existing record or created automatically.
hires_batch_move_applications
Move multiple applications to a pipeline stage in one request. Returns per-item results with partial success support. Max 100 application IDs per request.
hires_batch_reject_applications
Reject multiple applications in one request with an optional rejection reason. Returns per-item results with partial success support. Max 100 application IDs per request.
hires_list_jobs
List jobs with optional filters by status, date range, department, or search query. Returns paginated results. Use for career-site sync, reporting, and external system indexing.
hires_create_job
Create a job with taxonomy, location, salary, and workflow configuration. Primary endpoint for programmatic job publishing. Required fields: status, title, description, location_city, location_country.
hires_get_job
Get full details of a job by ID or alias. Use `include` to load related workflow, hiring team, or pipeline stages data.
hires_update_job
Update mutable job attributes. Only send fields you want to change. Preserves domain-level validation rules.
hires_delete_job
Delete a job. Use to align archived/removed positions across integrated platforms.
hires_set_job_status
Change job status via dedicated endpoint. Recommended for publish/unpublish/archive transitions and status automation workflows.
hires_list_job_boards
Get current board publication state for a specific job. Returns which job boards the job is published to. Useful for distribution dashboards and posting audits.
hires_publish_to_job_board
Activate selected job boards for a job. Sets boards to activation queue state. Use for controlled multi-board publishing workflows.
hires_remove_from_job_board
Deactivate selected board publications for a job. Stops the job from being listed on specified boards.
hires_batch_job_boards
Get board publication states for multiple jobs in one request. Optimized for batch monitoring and management UIs.
hires_batch_publish_to_boards
Activate board publication for multiple jobs in one request. Use for bulk job distribution workflows.
hires_batch_remove_from_boards
Deactivate board publication for multiple jobs in one request. Use for bulk depublishing workflows.
hires_list_hiring_team
List users currently assigned to a job's hiring team. Useful for notification routing and collaboration tooling.
hires_add_hiring_team_member
Add a company member to the job's hiring team. Use in workflow setup and ownership automation.
hires_list_job_webhooks
List webhooks configured for job-level events. Use to audit subscriptions and deployment state.
hires_create_job_webhook
Register a webhook URL for job-related events. Core step for outbound integration setup. URL must be HTTPS.
hires_delete_job_webhook
Delete a job webhook subscription by ID. Use for cleanup, rotation, and endpoint migration.
hires_list_messages
List messages sent or scheduled from a specific mail account. Returns outbound messages only (sent and scheduled), not received. Useful for monitoring cold outreach campaigns — check pending queue, delivery history, and plan next sends.
hires_get_message
Get a scheduled message by ID. Returns scheduler-backed message details including sender account, schedule timestamps, and cancelability.
hires_update_message
Fully update (replace) a scheduled message before send time. All required fields must be provided.
hires_patch_message
Partially update a scheduled message before send time. Only provided fields are changed.
hires_delete_message
Cancel a scheduled message before it is processed by the mailbox scheduler.
hires_batch_create_messages
Create up to 100 scheduled messages in one request. Each item specifies its own candidate_id and message payload. Items are processed independently -- one failure does not stop others. Per-candidate RBAC is enforced for each item.
hires_get_notification_message
Get a notification email message (e.g. rejection email) by ID. Returns subject, body, sender, recipient, and schedule metadata. Use candidate messages list to discover notification message IDs.
hires_update_notification_message
Update a scheduled notification email before it is sent. Change subject, body, and optionally reschedule the send time. Only scheduled (not yet sent) messages can be updated.
hires_delete_notification_message
Cancel a scheduled notification email before it is sent. Already sent messages cannot be canceled.
hires_cancel_all_notification_messages
Cancel all scheduled notification emails for a candidate. Already sent notifications are not affected. Returns success even if no scheduled notifications exist.
hires_list_interviews
List interviews with optional filters by job, application, candidate, interviewer, date, or timestamps for incremental sync. Returns paginated results.
hires_get_interview
Get full details of a specific interview by ID. Use `include` to embed related candidate, application, or job data.
hires_list_notes
List notes by candidate. Returns paginated discussion notes for a candidate. Use for shared recruiter context and timeline synchronization.
hires_create_note
Create a discussion note for a candidate. Supports visibility control (all or private) and @mentions with email notifications.
hires_get_note
Get a single note with author and visibility metadata. Use include=user to load author details.
hires_update_note
Update note body and/or visibility without creating a new timeline item. Use for corrections and moderation workflows.
hires_delete_note
Delete a note. Use for moderation policies and data cleanup operations.
hires_get_evaluation
Get a filled evaluation form with all answers. Returns evaluator info, summary score, summary text, and individual question answers. Use for detailed review of evaluator feedback on a candidate application.
hires_list_forms
List application forms (paginated). Returns forms with their questions for the target company.
hires_create_form
Create a new application form, optionally attaching existing questions by ID.
hires_get_form
Get form details including all questions with their statuses.
hires_update_form
Update form name and question composition.
hires_delete_form
Delete an application form.
hires_update_form_question
Update the status (required/optional/hidden) of a question inside a form.
hires_list_email_templates
List email templates for the target company. Returns paginated results with template name, subject, and body.
hires_create_email_template
Create a new email template with name, subject, and body. Subject and body support placeholders like {{first_name}}, {{job_title}}. To embed placeholders: 1) GET /template-placeholders to list them, 2) POST /template-placeholders/prepare to get the HTML tag, 3) insert the tag into the body.
hires_get_email_template
Get full details of a specific email template by ID, including subject and body content.
hires_update_email_template
Update an existing email template. Only provided fields are overwritten; omitted fields keep their current values. To add placeholders, use the same workflow as creation.
hires_delete_email_template
Soft-delete an email template. Templates already used in automations will stop being available for new actions.
hires_list_nurture_campaigns
List nurture campaigns with pagination. Returns campaign summaries including steps.
hires_create_nurture_campaign
Create a nurture campaign with steps. Steps are executed sequentially; each step has a type (email, sms, voicemail, move_to_next_stage, assign_tag, assign_task) with type-specific fields. Optionally bind to a workflow stage.
hires_get_nurture_campaign
Get a single nurture campaign by ID with all steps and configuration details.
hires_update_nurture_campaign
Update an existing nurture campaign. Pass all steps -- mark removed steps with is_deleted=true. Existing steps must include their id.
hires_delete_nurture_campaign
Delete (soft-delete) a nurture campaign. Active campaign executions will be stopped.
hires_list_users
List users for the target company with role context. Returns paginated results useful for access reviews and hiring-team management.
hires_get_user
Get a single user by ID within current tenant scope. Use for identity resolution in automation flows. The `default_mail_account_id` field can be used as `from_account_id` when sending emails.
hires_list_user_mail_accounts
List mail accounts connected to a user. Use to resolve `from_account_id` before creating scheduled emails via POST /candidates/{id}/messages.
hires_list_companies
List partner-accessible companies with pagination. Use for tenant discovery and management panels.
hires_create_company
Create a client company and link ownership context. Typical entrypoint for multi-tenant onboarding.
hires_get_company
Get company profile and owner metadata. Use before updates or ownership-sensitive actions.
hires_update_company
Update company profile, owner contact data, and optional logo. Supports partner-operated account management.
hires_delete_company
Delete a company. Use for lifecycle control in partner tenancy management.
hires_list_company_mail_accounts
List all mail accounts for all users in the current company. Use to resolve `from_account_id` before creating scheduled emails.
hires_list_company_id_mail_accounts
List all mail accounts for all users in a specific company. The company must be accessible (own company or a client).
hires_restore_company
Restore a previously deleted company and re-enable it for active use. Use for recovery and rollback scenarios.
hires_list_webhooks
List webhook subscriptions configured at company scope.
hires_create_webhook
Create a company-scoped webhook subscription. Use for outbound company-level event integrations.
hires_delete_webhook
Delete a company-scoped webhook subscription by ID. Use for endpoint retirement and security rotation.
hires_list_sources
List candidate sources for the company. Use for attribution sync and reporting consistency.
hires_list_origins
List candidate origin taxonomy values. Use for attribution analytics and source normalization.
hires_list_rejection_reasons
List configured rejection reasons for the company. Use to validate rejection actions and analytics.
hires_list_statuses
List job status labels (draft, published, on_hold, closed, archived). Cache to validate job status updates.
hires_list_departments
List departments for the company. Use for job organization filters and reporting dimensions.
hires_list_categories
List global job categories. Use for job classification and consistent taxonomy mapping.
hires_list_education_levels
List education level taxonomy values. Useful for job requirements and structured matching.
hires_list_experience_levels
List experience level taxonomy values for role seniority modeling.
hires_list_employment_types
List supported employment types (full-time, part-time, contract, etc.). Use for validation and normalization.
hires_list_boards
List available publishing boards with metadata. Use for distribution setup and board selection.
hires_list_tags
List all tags for the company. Returns paginated results. Recommended to cache for fast tagging UX.
hires_list_workflows
List workflows with embedded stages for the company. Use to build stage-aware integrations and routing rules.
hires_list_workflow_stages
List pipeline stages filtered by workflow or job. Useful for transition UIs and workflow validation.
hires_get_workflow_stages
Get stages for a specific workflow by ID. Equivalent to hires_list_workflow_stages with workflow_id filter.
hires_list_questions
List paginated question catalog for the company.
hires_create_question
Create a reusable question with optional answer options for dropdown types. Used by forms and questionnaires.
hires_get_question
Get a question definition including type and options by ID.
hires_update_question
Update text, type, or options of an existing question definition.
hires_delete_question
Delete a reusable question from the catalog. Use cautiously when deprecating question banks.
hires_list_question_types
List available question types supported by the platform. Use to drive dynamic form builders.
hires_list_template_placeholders
List available placeholders for email templates with pagination. Use `type` to filter by category, `q` to search by label. Discover placeholders here, then use hires_prepare_template_placeholders to get an HTML tag for insertion.
hires_prepare_template_placeholders
Convert a placeholder reference into an HTML tag for insertion into an email template body.
hires_get_billing
Get billing/pricing capability flags for the current company. Use before invoking paid-only API behaviors.
hires_submit_feedback
Submit structured API feedback about missing features, issues, or workflow improvements. Rate limited to 5 requests per hour.
hires_download_attachment
Download an attachment (resume, candidate file, application file, mail attachment, call recording). Pass the absolute URL returned by another endpoint (e.g. `message.attachments[].url`, `cv.url`, `resume.url`) — it MUST belong to the configured 100Hires API host; other hosts are rejected to avoid leaking the Bearer token. Returns `{file_name, mime_type, size, data}` where `data` is base64-encoded bytes. Files larger than 25 MB are rejected up-front (Content-Length check / streaming abort) without being loaded into memory.
hires_upload_attachment
Upload a file and create an attachment. Supported categories: `voicemail` (wav/mp3, max 20 MB, no object_id — returned `uuid` is usable as `attachment_uuid` in nurture voicemail steps); `candidate` (candidate ID); `application` (application ID); `candidate_comment` (comment ID); `job_note` (job-note ID); `company_favicon`/`company_header`/`company_link_preview` (company ID). Object ownership is strictly verified against the authenticated API key's company. Returns `{uuid, url, file, relative_time}`.
hires_list_career_jobs
List publicly visible jobs for a company career site. Supports filtering by department, employment type, city, and country. Use to power a custom careers page.
hires_get_career_job
Get full details of a single public job by ID. Returns salary, education level, experience level, and other extended fields. Returns 404 for draft, archived, or internal jobs.
hires_submit_career_application
Submit a job application on behalf of a candidate. Creates a candidate record and triggers the career-site pipeline automation.